Swagger跨域

什么是跨域

跨域是指从一个域名的网页去请求另一个域名的资源。比如从www.baidu.com 页面去请求 www.google.com 的资源。跨域的严格一点的定义是:只要 协议,域名,端口有任何一个的不同,就被当作是跨域。
ref: 跨域与跨域访问

  • 跨域与否是在浏览器端:
    Swagger跨域

  • 服务器之间的调用不是跨域:
    Swagger跨域

Swagger跨域

Swagger跨域

Solution

在swagger应用的服务器上使用代理。
比如Swagger应用在服务器A,其域名为swagger;Other应用在服务器B,其域名为other。改动如下:

在服务器A上使用代理,代理映射规则:swagger/api/* -> other/*
Swagger设置调试的接口在Swagger应用

Swagger跨域
这样就可以解决跨域问题。