java - 使用 @CrossOrigin 时不显示 CORS 响应 header

标签 java spring spring-boot

我创建了一个基本的 GET 端点,并尝试允许 CORS。但是,响应正文中没有返回预期的 header ,并且我找不到我在这里做错了什么。

我的 REST Controller 中的 GET 方法:

@CrossOrigin(
     allowCredentials = "true",
     origins = "*",
     allowedHeaders = {
             "Access-Control-Allow-Origin",
             "Access-Control-Allow-Headers",
             "Access-Control-Max-Age",
             "Access-Control-Allow-Methods",
             "Content-Type"})
public String test() {
    return "test";
}

当我在这里发送请求时,响应 header 如下:

Content-Length: 4
Content-Type: text/html;charset=UTF-8
Date: Mon, 13 May 2019 19:33:11 GMT

我希望将 header 添加到此响应中,即:

Content-Length: 4
Content-Type: text/html;charset=UTF-8
Date: Mon, 13 May 2019 19:33:11 GMT
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: Access-Control-Allow-Origin, Access-Control-Allow-Headers, Access-Control-Max-Age, Access-Control-Allow-Methods, Content-Type
Access-Control-Allow-Origin: *

任何帮助将不胜感激。

最佳答案

啊,我明白了 - 这些 header 仅为跨源请求添加。当我在请求 header 中设置来源时,响应 header 会按预期添加。

关于java - 使用 @CrossOrigin 时不显示 CORS 响应 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56119047/

相关文章:

Java JDBC 连接和 Oracle

java - 为 Hashtable.put() 分配的内存

java - Spring 中类的动态输入参数而不是 <constructor-arg>

java - 我可以通过 Spring Webflow 2.1.1 运行 Webflow 1.0 流吗?

java - 如何避免在 Spring Boot 集成测试中使用拦截器

java - RabbitMQ 消息签名

java - jpa、tomcat 和 servlet 出错

java - convertAndSend 与 Send To 注释

java - Spring Data - MongoDB 按给定顺序按 ID 获取对象

spring - JUnit测试用例错误: "Address already in use: bind"