从curl调用带有Auth0的Laravel 5.3 API时未经授权的用户

时间:2016-11-21 17:41:04

标签: curl laravel-5 auth0

寻找Auth0的便利性来整理我的Angular 2客户端和Laravel 5.3 API之间的JWT。我跟着(并仔细检查了我已经关注过)Auth0的入门指南:

https://auth0.com/docs/quickstart/backend/php-laravel

但似乎无法让它来验证我。当我卷曲如下:

curl --request GET --url http://localhost/api/test --header 'authorization: auth0_id_token'

我明白了:

Unauthorized user curl: (6) Could not resolve host: auth0_id_token

在我的\routes\api中,我有:

Route::get('/test', array('middleware' => 'auth0.jwt', function() {
    return "Hello " . Auth0::jwtuser()->name;
}));

我正在使用此代码生成id_token

https://auth0.com/docs/api/authentication#!#post--oauth-ro

并且可以看到我去(https://manage.auth0.com/#/users)时Auth0认为用户已登录。

我应该尝试调试的任何指针?

1 个答案:

答案 0 :(得分:1)

在HTTP Authorization标头中包含承载令牌的正确方法是使用Bearer身份验证方案,因此您的标头应为:

Authorization: Bearer [auth0_id_token]

此外,您从curl收到的错误也表明该命令未按您的意图进行解析,更具体地说,似乎'authorization: auth0_id_token'被解析为多个参数,导致{auth0_id_token 1}}部分被视为在尝试解析主机时失败的URL;尝试使用双引号。