首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >JWT:为什么我总是得到token_not_provided?

JWT:为什么我总是得到token_not_provided?
EN

Stack Overflow用户
提问于 2016-08-20 05:03:54
回答 1查看 291关注 0票数 0

我正在向我创建的一个PUT端点发送一个API请求。使用jwt,我能够成功注册并获得令牌。

使用Postman,我的请求可以完美地工作。

我在应用程序中使用Guzzle发送PUT请求。它看起来是这样的:

代码语言:javascript
运行
复制
$client = new \Guzzle\Http\Client('http://foo.mysite.dev/api/');
$uri = 'user/123';
$post_data = array(
    'token' => eyJ0eXAiOiJKV1QiLCJhbGc..., // whole token
    'name' => 'Name',
    'email' => name@email.com,
    'suspended' => 1,
);

$data = json_encode($post_data);

$request = $client->put($uri, array(
    'content-type' => 'application/json'
));

$request->setBody($data);
$response = $request->send();
$json = $response->json();

} catch (\Exception $e) {
    error_log('Error: Could not update user:');
    error_log($e->getResponse()->getBody());            
}

当我记录$data变量以查看其外观时,返回的内容如下所示。

代码语言:javascript
运行
复制
error_log(print_r($data, true));

{"token":"eyJ0eXAiOiJKV1QiL...","name":"Name","email":"name@email.com","suspended":1}

Error: Could not suspend user:
{"error":"token_not_provided"}

似乎所有数据都被正确填充,我不确定为什么系统找不到令牌。使用相同的参数通过Postman (作为PUT)运行“相同”的查询效果很好。

任何建议都是非常感谢的!

EN

Stack Overflow用户

发布于 2016-08-21 15:47:08

应在authorization标头中设置令牌,而不是将其设置为post数据参数

代码语言:javascript
运行
复制
$request->addHeader('Authorization', 'Basic eyJ0eXAiOiJKV1QiL...');
票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39047645

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档