背景
我有一个托管在localhost / Heroku上的简单NodeJS服务器,它处理JWT身份验证,以便在注册用户和其他(无关)事物中添加数据。
这是GitHub:https://github.com/mlee93dev/pw-keychain-server
我也在本地服务器的localhost / Heroku上有一个简单的Angular2客户端:
https://github.com/mlee93dev/pw-keychain-app
目前,我的JWT访问令牌配置为在我的服务器中仅持续5秒用于开发目的。
我根据自己的知识配置了我的CORS内容,如下所示:server.js:
问题
On Postman我测试了POST请求,得到了预期的响应 - 一个JWT到期错误:
但是,我不能在我的客户端得到相同的回复 - 相反,我必须提供JWT'错误:
正如您在上面的图片中看到的那样,我知道我实际上正在附加一个令牌,因为我控制它。记录它。这是代码的照片:
所以让我更加困惑的是,我的DELETE请求(用于注销)也实现了相同的x-auth令牌来请求代码,并且它在Postman + client中都有效,如下所示:
所以是的,我很困惑。我的猜测是我必须更多地配置我的CORS才能在POST请求中以某种方式允许x-auth头?即使我认为它应该已经使用我当前的配置。
答案 0 :(得分:0)
您在邮寄请求中提供正文而不是标题。 Angular POST request
因此,在您的帖子请求中,请执行以下操作
this.http.post(yoururl, {},{headers:new Headers({'x-auth':token})})...
它应该工作。