您好,我正在使用flutter,我用十月的cms构建了一个api。我使用vdomah的插件进行JWT身份验证,我想我遵循了README.md,但当我尝试将令牌发送到api时,我认为代码是不被接受的:
路由:
Route::post('storephoto', function (Work $Work, Request $request) {
...
$Work->save();
})->middleware('Tymon\JWTAuth\Middleware\GetUserFromToken');颤动的一面:
upload(String fileName) {
http.post(AppUrl.baseURL + "/storephoto",
headers: {
'Authorization': 'Bearer $token'
},
body: {
"name": workNameController.text,
"images": fileName,
"description": descriptionController.text
}).then((result) {
setStatus(result.statusCode == 200 ? result.body : errMessage);
if(result.statusCode == 200) {
Navigator.push(context,
MaterialPageRoute(
builder: (context) => MainScreen()));
};
}).catchError((error) {
setStatus(error);
});
}我打印了此函数中的令牌,它确实存在,但在控制台中看不到错误。
我尝试创建一个GET路由,api似乎在浏览器中工作,消息如下:
{
"error": "token_not_provided"
}现在我觉得生成的令牌没有签名,或者没有被识别,我该怎么办?提前谢谢。
发布于 2021-09-03 07:34:10
有一次我遇到了同样的问题,不确定插件中有什么问题,做下面的更改就解决了它。
此文件中的
插件/vdomah/jwtauth/Plugin.php执行以下更改。

如果您有任何疑问,请发表意见。
你能使用这样的中间件吗?
Route::group(['middleware' =>
['\Tymon\JWTAuth\Middleware\GetUserFromToken']], function() {
Route::post('storephoto', function (Request $request) {
//..code
});
});就像我喜欢它的工作
一样
https://stackoverflow.com/questions/69040616
复制相似问题