laravel passport:为什么相同的代码适用于 Http Get 请求但不适用于 POST?
laravel passport: why the same code works with Http Get request but doesn't work with POST?
我有一个 Laravel 应用程序和一个通过 Passport 连接到它的 C# 应用程序。
我做了一些简单的函数来让用户像这样更新他的密码:
Laravel路线
Route::post('user/updatepassword','UserController@changepassword')->middleware('auth:api');
Laravel 控制器
public function changepassword(Request $request)
{
$this->validate($request, [ 'password' => 'required|string|max:255' ]);
$newuser = User::find(Auth::user()->id);
$newuser->password = bcrypt($request->password);
$newuser->save();
}
C# 函数
public string UpdatePassword(string password)
{
var client = new RestClient(APPConnection.ApiRoot + "user/updatepassword");
//// client.Authenticator = new HttpBasicAuthenticator(username, password);
var request = new RestRequest("", Method.POST);
request.AddParameter("password", password); // adds to POST or URL querystring based on Method
request.AddHeader("Authorization", "Bearer " + Current_User.access_token);
// execute the request
IRestResponse response = client.Execute(request);
var content = response.Content; // raw content as string
return content;
}
这段代码不起作用,它抛出了很多无意义的异常,或者,至少,我无法弄清楚。
但是,当我更改所有内容以在 C# 代码和 Laravel 端使用 HTTP GET 请求时,它工作正常。
我不确定哪里出了问题。可能是我传递令牌的方式对于 GET 和 POST 请求应该不同。
这是我收到的回复的副本:
{
"message": "",
"exception": "Symfony\Component\HttpKernel\Exception\HttpException",
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Foundation\Exceptions\Handler.php",
"line": 203,
"trace": [
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Foundation\Exceptions\Handler.php",
"line": 175,
"function": "prepareException",
"class": "Illuminate\Foundation\Exceptions\Handler",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplication\app\Exceptions\Handler.php",
"line": 51,
"function": "render",
"class": "Illuminate\Foundation\Exceptions\Handler",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php",
"line": 83,
"function": "render",
"class": "App\Exceptions\Handler",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php",
"line": 55,
"function": "handleException",
"class": "Illuminate\Routing\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\View\Middleware\ShareErrorsFromSession.php",
"line": 49,
"function": "Illuminate\Routing\{closure}",
"class": "Illuminate\Routing\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php",
"line": 149,
"function": "handle",
"class": "Illuminate\View\Middleware\ShareErrorsFromSession",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php",
"line": 53,
"function": "Illuminate\Pipeline\{closure}",
"class": "Illuminate\Pipeline\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Session\Middleware\StartSession.php",
"line": 63,
"function": "Illuminate\Routing\{closure}",
"class": "Illuminate\Routing\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php",
"line": 149,
"function": "handle",
"class": "Illuminate\Session\Middleware\StartSession",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php",
"line": 53,
"function": "Illuminate\Pipeline\{closure}",
"class": "Illuminate\Pipeline\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse.php",
"line": 37,
"function": "Illuminate\Routing\{closure}",
"class": "Illuminate\Routing\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php",
"line": 149,
"function": "handle",
"class": "Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php",
"line": 53,
"function": "Illuminate\Pipeline\{closure}",
"class": "Illuminate\Pipeline\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Cookie\Middleware\EncryptCookies.php",
"line": 59,
"function": "Illuminate\Routing\{closure}",
"class": "Illuminate\Routing\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php",
"line": 149,
"function": "handle",
"class": "Illuminate\Cookie\Middleware\EncryptCookies",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php",
"line": 53,
"function": "Illuminate\Pipeline\{closure}",
"class": "Illuminate\Pipeline\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php",
"line": 102,
"function": "Illuminate\Routing\{closure}",
"class": "Illuminate\Routing\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Router.php",
"line": 647,
"function": "then",
"class": "Illuminate\Pipeline\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Router.php",
"line": 622,
"function": "runRouteWithinStack",
"class": "Illuminate\Routing\Router",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Router.php",
"line": 588,
"function": "runRoute",
"class": "Illuminate\Routing\Router",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Router.php",
"line": 577,
"function": "dispatchToRoute",
"class": "Illuminate\Routing\Router",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php",
"line": 176,
"function": "dispatch",
"class": "Illuminate\Routing\Router",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php",
"line": 30,
"function": "Illuminate\Foundation\Http\{closure}",
"class": "Illuminate\Foundation\Http\Kernel",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\fideloper\proxy\src\TrustProxies.php",
"line": 56,
"function": "Illuminate\Routing\{closure}",
"class": "Illuminate\Routing\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php",
"line": 149,
"function": "handle",
"class": "Fideloper\Proxy\TrustProxies",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php",
"line": 53,
"function": "Illuminate\Pipeline\{closure}",
"class": "Illuminate\Pipeline\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\TransformsRequest.php",
"line": 30,
"function": "Illuminate\Routing\{closure}",
"class": "Illuminate\Routing\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php",
"line": 149,
"function": "handle",
"class": "Illuminate\Foundation\Http\Middleware\TransformsRequest",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php",
"line": 53,
"function": "Illuminate\Pipeline\{closure}",
"class": "Illuminate\Pipeline\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\TransformsRequest.php",
"line": 30,
"function": "Illuminate\Routing\{closure}",
"class": "Illuminate\Routing\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php",
"line": 149,
"function": "handle",
"class": "Illuminate\Foundation\Http\Middleware\TransformsRequest",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php",
"line": 53,
"function": "Illuminate\Pipeline\{closure}",
"class": "Illuminate\Pipeline\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\ValidatePostSize.php",
"line": 27,
"function": "Illuminate\Routing\{closure}",
"class": "Illuminate\Routing\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php",
"line": 149,
"function": "handle",
"class": "Illuminate\Foundation\Http\Middleware\ValidatePostSize",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php",
"line": 53,
"function": "Illuminate\Pipeline\{closure}",
"class": "Illuminate\Pipeline\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode.php",
"line": 46,
"function": "Illuminate\Routing\{closure}",
"class": "Illuminate\Routing\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php",
"line": 149,
"function": "handle",
"class": "Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php",
"line": 53,
"function": "Illuminate\Pipeline\{closure}",
"class": "Illuminate\Pipeline\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php",
"line": 102,
"function": "Illuminate\Routing\{closure}",
"class": "Illuminate\Routing\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php",
"line": 151,
"function": "then",
"class": "Illuminate\Pipeline\Pipeline",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php",
"line": 116,
"function": "sendRequestThroughRouter",
"class": "Illuminate\Foundation\Http\Kernel",
"type": "->"
},
{
"file": "C:\xampp\htdocs\myefapplication\public\index.php",
"line": 55,
"function": "handle",
"class": "Illuminate\Foundation\Http\Kernel",
"type": "->"
}
]
}
我不知道为什么你的异常输出如此可怕,但你 运行 陷入了 CSRF 令牌不匹配异常。
Laravel 在 web
中间件的所有 POST 路由上默认需要一个 CSRF 令牌。 routes/web.php
文件中定义的所有路由都放在 web
中间件组中。
如果这是一个 API 端点(考虑到您使用的是护照,我假设它是),您的路由应该在 routes/api.php
文件中定义。通过这样做,它被放置在 api
中间件组而不是 web
中间件组中。这将消除 CSRF 令牌限制等。
我有一个 Laravel 应用程序和一个通过 Passport 连接到它的 C# 应用程序。
我做了一些简单的函数来让用户像这样更新他的密码:
Laravel路线
Route::post('user/updatepassword','UserController@changepassword')->middleware('auth:api');
Laravel 控制器
public function changepassword(Request $request)
{
$this->validate($request, [ 'password' => 'required|string|max:255' ]);
$newuser = User::find(Auth::user()->id);
$newuser->password = bcrypt($request->password);
$newuser->save();
}
C# 函数
public string UpdatePassword(string password)
{
var client = new RestClient(APPConnection.ApiRoot + "user/updatepassword");
//// client.Authenticator = new HttpBasicAuthenticator(username, password);
var request = new RestRequest("", Method.POST);
request.AddParameter("password", password); // adds to POST or URL querystring based on Method
request.AddHeader("Authorization", "Bearer " + Current_User.access_token);
// execute the request
IRestResponse response = client.Execute(request);
var content = response.Content; // raw content as string
return content;
}
这段代码不起作用,它抛出了很多无意义的异常,或者,至少,我无法弄清楚。 但是,当我更改所有内容以在 C# 代码和 Laravel 端使用 HTTP GET 请求时,它工作正常。
我不确定哪里出了问题。可能是我传递令牌的方式对于 GET 和 POST 请求应该不同。
这是我收到的回复的副本:
{ "message": "", "exception": "Symfony\Component\HttpKernel\Exception\HttpException", "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Foundation\Exceptions\Handler.php", "line": 203, "trace": [ { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Foundation\Exceptions\Handler.php", "line": 175, "function": "prepareException", "class": "Illuminate\Foundation\Exceptions\Handler", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplication\app\Exceptions\Handler.php", "line": 51, "function": "render", "class": "Illuminate\Foundation\Exceptions\Handler", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php", "line": 83, "function": "render", "class": "App\Exceptions\Handler", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php", "line": 55, "function": "handleException", "class": "Illuminate\Routing\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\View\Middleware\ShareErrorsFromSession.php", "line": 49, "function": "Illuminate\Routing\{closure}", "class": "Illuminate\Routing\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php", "line": 149, "function": "handle", "class": "Illuminate\View\Middleware\ShareErrorsFromSession", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php", "line": 53, "function": "Illuminate\Pipeline\{closure}", "class": "Illuminate\Pipeline\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Session\Middleware\StartSession.php", "line": 63, "function": "Illuminate\Routing\{closure}", "class": "Illuminate\Routing\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php", "line": 149, "function": "handle", "class": "Illuminate\Session\Middleware\StartSession", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php", "line": 53, "function": "Illuminate\Pipeline\{closure}", "class": "Illuminate\Pipeline\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse.php", "line": 37, "function": "Illuminate\Routing\{closure}", "class": "Illuminate\Routing\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php", "line": 149, "function": "handle", "class": "Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php", "line": 53, "function": "Illuminate\Pipeline\{closure}", "class": "Illuminate\Pipeline\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Cookie\Middleware\EncryptCookies.php", "line": 59, "function": "Illuminate\Routing\{closure}", "class": "Illuminate\Routing\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php", "line": 149, "function": "handle", "class": "Illuminate\Cookie\Middleware\EncryptCookies", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php", "line": 53, "function": "Illuminate\Pipeline\{closure}", "class": "Illuminate\Pipeline\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php", "line": 102, "function": "Illuminate\Routing\{closure}", "class": "Illuminate\Routing\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Router.php", "line": 647, "function": "then", "class": "Illuminate\Pipeline\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Router.php", "line": 622, "function": "runRouteWithinStack", "class": "Illuminate\Routing\Router", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Router.php", "line": 588, "function": "runRoute", "class": "Illuminate\Routing\Router", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Router.php", "line": 577, "function": "dispatchToRoute", "class": "Illuminate\Routing\Router", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php", "line": 176, "function": "dispatch", "class": "Illuminate\Routing\Router", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php", "line": 30, "function": "Illuminate\Foundation\Http\{closure}", "class": "Illuminate\Foundation\Http\Kernel", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\fideloper\proxy\src\TrustProxies.php", "line": 56, "function": "Illuminate\Routing\{closure}", "class": "Illuminate\Routing\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php", "line": 149, "function": "handle", "class": "Fideloper\Proxy\TrustProxies", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php", "line": 53, "function": "Illuminate\Pipeline\{closure}", "class": "Illuminate\Pipeline\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\TransformsRequest.php", "line": 30, "function": "Illuminate\Routing\{closure}", "class": "Illuminate\Routing\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php", "line": 149, "function": "handle", "class": "Illuminate\Foundation\Http\Middleware\TransformsRequest", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php", "line": 53, "function": "Illuminate\Pipeline\{closure}", "class": "Illuminate\Pipeline\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\TransformsRequest.php", "line": 30, "function": "Illuminate\Routing\{closure}", "class": "Illuminate\Routing\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php", "line": 149, "function": "handle", "class": "Illuminate\Foundation\Http\Middleware\TransformsRequest", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php", "line": 53, "function": "Illuminate\Pipeline\{closure}", "class": "Illuminate\Pipeline\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\ValidatePostSize.php", "line": 27, "function": "Illuminate\Routing\{closure}", "class": "Illuminate\Routing\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php", "line": 149, "function": "handle", "class": "Illuminate\Foundation\Http\Middleware\ValidatePostSize", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php", "line": 53, "function": "Illuminate\Pipeline\{closure}", "class": "Illuminate\Pipeline\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode.php", "line": 46, "function": "Illuminate\Routing\{closure}", "class": "Illuminate\Routing\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php", "line": 149, "function": "handle", "class": "Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Routing\Pipeline.php", "line": 53, "function": "Illuminate\Pipeline\{closure}", "class": "Illuminate\Pipeline\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php", "line": 102, "function": "Illuminate\Routing\{closure}", "class": "Illuminate\Routing\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php", "line": 151, "function": "then", "class": "Illuminate\Pipeline\Pipeline", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplicationendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php", "line": 116, "function": "sendRequestThroughRouter", "class": "Illuminate\Foundation\Http\Kernel", "type": "->" }, { "file": "C:\xampp\htdocs\myefapplication\public\index.php", "line": 55, "function": "handle", "class": "Illuminate\Foundation\Http\Kernel", "type": "->" } ] }
我不知道为什么你的异常输出如此可怕,但你 运行 陷入了 CSRF 令牌不匹配异常。
Laravel 在 web
中间件的所有 POST 路由上默认需要一个 CSRF 令牌。 routes/web.php
文件中定义的所有路由都放在 web
中间件组中。
如果这是一个 API 端点(考虑到您使用的是护照,我假设它是),您的路由应该在 routes/api.php
文件中定义。通过这样做,它被放置在 api
中间件组而不是 web
中间件组中。这将消除 CSRF 令牌限制等。