我正在测试基于JWT令牌安全性的实现,这是基于下面的文章。我已经成功地从测试服务器接收到令牌。我不知道如何有Chrome邮差REST客户端程序在头发送令牌。

我的问题如下:

1)我是否使用了正确的头名称和/或POSTMAN接口?

2)我需要base64编码令牌吗?我觉得我可以把代币寄回去。


当前回答

下面是如何自动设置令牌

在您的登录/身份验证请求

对于已验证的页面

其他回答

我按照moplin提到的那样做了。但是在我的例子中,服务在响应头中发送JWT,作为键“授权”下的值。

Authorization →Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJpbWFsIiwiZXhwIjoxNDk4OTIwOTEyfQ.dYEbf4x5TGr_kTtwywKPI2S-xYhsp5RIIBdOa_wl9soqaFkUUKfy73kaMAv_c-6cxTAqBwtskOfr-Gm3QI0gpQ

我所做的是,在邮差中创建一个全局变量为

键- > jwt 价值——> blahblah

在登录请求->测试选项卡中,添加

postman.clearGlobalVariable("jwt");
postman.setGlobalVariable("jwt", postman.getResponseHeader("Authorization"));

在其他请求中选择Headers选项卡并给出

键- >授权 价值——> {{jwt}}

不知怎么的,邮递员不适合我。 我不得不使用一个名为rest的chrome扩展。

其他一切。参数、授权、正文、预请求脚本、测试为空,只需打开头选项卡并如图所示添加。对于GET请求也是一样的。

我在Flask中遇到了同样的问题,在尝试了前2个相同的解决方案(授权:承载<令牌>)后,得到了这个:

{
    "description": "Unsupported authorization type",
    "error": "Invalid JWT header",
    "status_code": 401
}

我最终通过使用:

Authorization: jwt <token>

我想这可能会为遇到同样问题的人节省一些时间。

如果你希望使用邮差,正确的方法是使用标题

关键:授权

取值:JWT {token}

就这么简单。