我想从reactjs(前端)传递一个身份验证令牌到springboot(后端)应用程序。我已经使用下面的代码验证了我的前端。
现在我在cookie中有一个值(at_origin: "一些随机值"),我需要传递它来调用这个auth_status api。在react中,我做了以下操作,它工作了。
export const userAuthStatus = async () => {
let authStatus = [];
authStatus = axios.post('https://../auth_status', { resources: [{ classpath: 'test }] },
{ withCredentials: true }).then(response => response.data.user);
return authStatus;
};
从react(前端)代码,我调用后端,我需要传递前面提到的cookie来检查验证状态。我需要设置cookie(我只需要"at_origin"在从springboot(后端)调用auth_status之前,将key-value)作为x认证。
我通过以下方式将所有cookie值从前端传递到后端。
try {
const url = `https://backend api url`;
const res = await axios.get(url, { withCredentials: true }).then(res => res);
return res;
} catch (error) {
console.log(error);
}
但我不确定如何在后端获得值(at_origin)。你能帮帮我吗?
提前感谢,
最简单的方法是在控制器中使用@CookieValue
注释:
@RequestMapping("/hello")
public String hello(@CookieValue("foo") String fooCookie) {
// ...
}
否则,您可以使用Springorg.springframework.web.util.WebUtils
WebUtils.getCookie(HttpServletRequest request, String cookieName)