我已经从我的球衣项目中生成了 swagger.json,并尝试在 swagger 编辑器上本地测试它,但我在每个 api 的"试用"上都遇到了众所周知的错误:缺少 CORS 标头"访问控制-允许来源"即使我已经为每个请求添加了所需的标头:
Java代码
public Response getObject(@PathParam("name")String name) {
....
return Response.ok(myObect)
.header("Access-Control-Allow-Origin", "*")
.header("Access-Control-Allow-Credentials", "true")
.header("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS, HEAD")
.header("Access-Control-Allow-Headers", "origin, content-type, accept, authorization").build();
}
产生的招摇
'/object/{name}':
get:
consumes:
- application/json
produces:
- text/html
parameters:
- type: string
name: name
in: path
required: true
responses:
'200':
description: OK
headers:
Access-Control-Allow-Credentials:
type: string
Access-Control-Allow-Headers:
type: string
Access-Control-Allow-Methods:
type: string
Access-Control-Allow-Origin:
type: string
顺便说一句,我在 tomcat 8.5 上运行该项目并在 Wamp 服务器上大摇大摆,我希望这没有任何区别
我认为
这可能与您的服务器有关,而不是代码本身!
wampmanager -> Apache -> Apache modules -> headers_module
首先尝试在 WAMP 服务器上启用 CORS。