2015-06-11 6 views
9
में

मैं कुछ REST API तरीके लिखा है एक डीबी प्रविष्टि अद्यतन करने के लिए एक सहित,:PUT/डाकिया के साथ PATCH अनुरोध स्थिति कोड 0 रिटर्न Laravel

Route::put('/aeds/{aeds}', '[email protected]'); 
    Route::patch('/aeds/{aeds}', '[email protected]'); 
:

// Update 
public function update(CreateAEDRequest $request, $id) { 
    $aed = AED::find($id); 

    if(!$aed) { 
     return response()->json(['message' => "Dieser AED exisitiert nicht", 'code' => 404], 404); 
    } 

    $owner = $request->get('owner'); 
    $street = $request->get('street'); 

    $aed->owner = $owner; 
    $street->street = $street; 

    $aed->save(); 

    return response()->json(['message' => 'Der AED wurde aktualisiert'], 200); 
} 

मार्ग के रूप में परिभाषित किया गया है

एक अनुरोध द्वारा नियंत्रित किया जा रहा है:

<?php 

namespace App\Http\Requests; 

use App\Http\Requests\Request; 
use Illuminate\Http\JsonResponse; 

class CreateAEDRequest extends Request 
{ 
    public function authorize() 
    { 
     // turn back to false when doing auth 
     return true; 
    } 

    public function rules() 
    { 
     return [ 
      'owner' => 'required', 
      'street' => 'required' 
     ]; 
    } 

} 

लेकिन मैं fil जब मैं डाकिया का उपयोग करें और मौजूदा डीबी प्रविष्टि अद्यतन करने के लिए कोशिश करते हैं और अनुरोध के अनुसार POSTMAN में मालिक और सड़क परिवर्तक में भेजा जाना चाहिए, मुझे संदेश मिलता है: "कोई प्रतिक्रिया नहीं मिली। स्थिति कोड 0 "

enter image description here

सभी अन्य तरीकों ठीक काम करते हैं। सही नहीं मेरी मार्ग की परिभाषा है देता है?

अद्यतन मैं डेटा x-www-form-urlencoded के रूप में यह काम करता है जब भेज! जब मैं उन्हें भेजने के फार्म डेटा के रूप में यह लाता त्रुटि संदेश।

+0

'$ id' अशक्त है जब आप फार्म डेटा के रूप में सांकेतिक शब्दों में बदलना? आम तौर पर आप अपने वैरिएबल को रूट पैरामीटर के समान नाम कहते हैं, लेकिन मुझे यकीन नहीं है कि यह एक मौलिक आवश्यकता है। – Varedis

+0

खैर, मुझे नहीं लगता कि यह x-www-form-urlencoded के साथ क्यों काम कर रहा है, तो – sesc360

+5

डाल/पैच के लिए आपको डेटा को एक्स-www-form-urlencoded –

उत्तर

1

Postman

    में POST
  1. को विधि
  2. बदलें मूल्य PUT या PATCH
+1

यह विधि आसान नहीं है लार्वेल 5.4 में मेरे लिए काम नहीं करते –

1

ऐसा लगता है कि डाकिया में आप इंगित करना चाहिए कि डेटा आप भेजने x-www-url-formurlencoded है लग रहा है के साथ नए चर _method जोड़ें।

enter image description here

संबंधित मुद्दे