通过浏览器获取请求发送JWT令牌

时间:2018-11-01 07:34:18

标签: java authentication spring-security jwt

我正在开发Java Spring Security应用程序,并且我想使用Json Web Token(JWT)来实现无状态认证。

对于ajax请求,没有任何问题,我可以使用以下格式在请求标头中发送生成的令牌:

sudo apt-get install build-essential

问题是通过点击Authorization: Bearer jwtHeader.jwtPayload.jwtSignature 标签发送GET请求。假设我有一个<a>网址,该网址负责获取正常的html页面,并且我想仅对经过身份验证的用户保护它。 当用户单击链接或将api get url直接粘贴到浏览器地址栏中时,由于get请求中没有jwt令牌,因此他的请求始终失败。

是否可以通过浏览器的get请求发送jwt?

2 个答案:

答案 0 :(得分:0)

在标签的每个链接中添加jwt作为查询参数。

例如My Orders

<a href="/my-orders?jwt=eyJhbGNiJ9.eyJzdWIiOiIwIsH0.KsKmQOZM-jcy4l_7NFsrWn">My Orders</a>

,并且在后端中,get或post请求的查询参数中应包含jwt。

答案 1 :(得分:0)

使用XMLHttpRequest可以将Http标头添加到GET请求中,但是不能将http标头添加到锚标记GET请求中。