如何将api路由组与我的auth组合起来,使其具有以下内容:
<system.web>
<!-- Setting maxRequestLength to be much greater than default 4096 so that large data may be uploaded e.g. images, docs -->
<httpRuntime requestPathInvalidCharacters="" requestValidationMode="2.0" maxRequestLength="204800000" executionTimeout="3600" />
</system.web>
<system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs" warningLevel="4" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=4.0.0.0, Culture=neutral>
<providerOption name="CompilerVersion" value="v4.0" />
<providerOption name="WarnAsError" value="false" />
</compiler>
</compilers>
</system.codedom>
<system.webServer>
<security>
<requestFiltering allowDoubleEscaping="true">
<requestLimits maxAllowedContentLength="2200000000" />
</requestFiltering>
</security>
</system.webServer>
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
<behaviors>
<serviceBehaviors>
<behavior>
<dataContractSerializer maxItemsInObjectGraph="6553600" />
</behavior>
</serviceBehaviors>
</behaviors>
<bindings>
<webHttpBinding>
<binding maxReceivedMessageSize="6553600" />
</webHttpBinding>
</bindings>
</system.serviceModel>
因此,如果我调用默认的api路由:
Route::group(['middleware' => 'auth'], function () {
...
});
我没有回报价值。
我是api路线的新手,所以我做错了什么。
我找不到api Laravel 5.4的教程
答案 0 :(得分:1)
像这样的东西
Route::group(['middleware' => 'auth:api'], function(){
Route::get('user', function(Request $request) {
dd($request->user());
});
});
通过ajax传递令牌
var token = <?php json_encode(Auth::user()->api_token); ?>;
$.ajax({
url:'http://...',
headers: {
'Authorization': 'Bearer ' + token
},
method: 'POST'
...
})
答案 1 :(得分:0)
Route::middleware('auth:api')->get('/user', function () {
return Auth::user();
});
或
Route::get('/user', function () {
return Auth::user();
})->middleware('auth');