लारवेल 5.3 में एपीआई रूट का उपयोग कैसे करें


93

लारवेल में 5.3 एपीआई मार्गों को एपीआई.एफपी फाइल में ले जाया गया। लेकिन मैं api.php फ़ाइल में मार्ग कैसे कह सकता हूं? मैंने इस तरह एक मार्ग बनाने की कोशिश की:

Route::get('/test',function(){
     return "ok"; 
});

मैंने निम्नलिखित URL आज़माए लेकिन दोनों ने NotFoundHttpException अपवाद लौटा दिया:

  • http://localhost:8080/test/public/test
  • http://localhost:8080/test/public/api/test

मैं इस एपीआई मार्ग को कैसे कह सकता हूं?


जवाबों:


173

आप इसे करके फोन करें

http://localhost:8080/api/test
                      ^^^

यदि आप देखते हैं app/Providers/RouteServiceProvider.phpतो आप देखेंगे कि डिफ़ॉल्ट रूप से यह apiएपीआई मार्गों के लिए उपसर्ग निर्धारित करता है , जिसे आप चाहें तो बदल सकते हैं।

protected function mapApiRoutes()
{
    Route::group([
        'middleware' => 'api',
        'namespace' => $this->namespace,
        'prefix' => 'api',
    ], function ($router) {
        require base_path('routes/api.php');
    });
}

किसी भी विचार कैसे लार्वा 5.4 में कॉल करने के लिए? डिफ़ॉल्ट एपीआई मार्ग: Route::middleware('auth:api')->get('/user', function (Request $request) { return $request->user(); }); मैंने लोकलहोस्ट / ऐप / एपीआई / उपयोगकर्ता की कोशिश की, लेकिन काम नहीं किया
utdev

@utdev आप बिलकुल उसी का उपयोग करते हैं। appअपने URI से सेगमेंट निकालें । यह की तर्ज पर दिखना चाहिएlocalhost/api/user
peterm


1

मार्गों / api.php

Route::get('/test', function () {
    return response('Test API', 200)
                  ->header('Content-Type', 'application/json');
});

मैपिंग को सेवा प्रदाता App \ Providers \ RouteServiceProvider में परिभाषित किया गया है

protected function mapApiRoutes(){
    Route::group([
        'middleware' => ['api', 'auth:api'],
        'namespace' => $this->namespace,
        'prefix' => 'api',
    ], function ($router) {
        require base_path('routes/api.php');
    });
}
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.