我有以下api路由:
Route::get('/user/get', function(Request $request) {
return Auth::user();
})->middleware('auth:api');
要测试以上内容的客户端应用程序:
$access_token = 'd3f7333f7602c67e03cab2ab5171e893aeb731af0524d47864fb9d517de46f359a9dc6377195d46e';
$ch = curl_init();
$url = 'http://127.0.0.1:8000/api/user/get';
$header = array(
'Accept: application/json',
'Authorization: Bearer '. $access_token
);
curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
$result = curl_exec($ch);
curl_close($ch);
$response = json_decode($result);
var_dump($result);
var_dump结果始终为:Unauthorized.
我已经从数据库表中复制了access_token,它既没有撤销也没有过期,并且表中只有一个access_token。
那么上述原因为何不起作用-任何想法我做错了什么?
答案 0 :(得分:1)
好的,看来数据库表内的令牌已加密或某种原因,这可能就是为什么它不起作用的原因。当我使用http://127.0.0.1:8000/oauth/token返回的令牌时,它将起作用。