springboot将cookie传入前端如何再返回给后端
时间: 2023-10-22 07:23:46 浏览: 247
springboot 返回给前端不必要的字段如何处理
在Spring Boot中,可以使用`@CookieValue`注解来获取从前端传递过来的cookie值。具体地,可以在Controller的方法参数中使用该注解来获取cookie值,如下所示:
```java
@GetMapping("/example")
public String exampleMethod(@CookieValue("cookieName") String cookieValue, Model model) {
model.addAttribute("cookieValue", cookieValue);
return "example";
}
```
上述代码中,`@CookieValue`注解用于获取名为`cookieName`的cookie值,并将其赋值给`cookieValue`参数。然后,可以将`cookieValue`添加到Model中,返回到前端。
在前端,可以使用JavaScript的`document.cookie`属性来获取cookie值,并通过AJAX请求将其发送回后端。具体地,可以使用jQuery的`$.ajax()`方法来发送AJAX请求,如下所示:
```javascript
var cookieValue = document.cookie.replace(/(?:(?:^|.*;\s*)cookieName\s*\=\s*([^;]*).*$)|^.*$/, "$1");
$.ajax({
url: "/example",
type: "GET",
data: {cookieValue: cookieValue},
success: function(response) {
console.log(response);
},
error: function(xhr) {
console.log(xhr.responseText);
}
});
```
上述代码中,`document.cookie`属性用于获取名为`cookieName`的cookie值,并将其保存在`cookieValue`变量中。然后,使用`$.ajax()`方法发送GET请求,并将`cookieValue`作为参数传递给后端。在后端,可以通过`@RequestParam`注解来获取请求参数,如下所示:
```java
@GetMapping("/example")
public String exampleMethod(@RequestParam("cookieValue") String cookieValue, Model model) {
model.addAttribute("cookieValue", cookieValue);
return "example";
}
```
上述代码中,`@RequestParam`注解用于获取名为`cookieValue`的请求参数,并将其赋值给`cookieValue`参数。然后,可以将`cookieValue`添加到Model中,返回到前端。
阅读全文