nginx代理后,swagger报TypeError: Failed to fetch错误
idea项目打包后,本地测试访问swagger接口正常,部署到服务器启动后直接访问ip地址swagger也正常,但是通过nginx代理后无法访问,提示TypeError: Failed to fetch 错误
nginx代理访问:

本地接口访问:

通过服务器访问swagger接口地址可以看到,请求缺少ip地址对应的端口导致不知道访问那个服务。

解决办法:
修改nginx代理,添加访问端口。
proxy_set_header Host
h
o
s
t
:
host:
host:server_port;
以上配置完成后,重启nginx,再次测试,发现问题依然没有解决。怀疑是swagger访问接口导致,通过配置swagger接口访问地址,重新发布项目测试,问题解决。

但是以上问题虽然解决了,但是很麻烦,发布服务时需要每次都修改swagger地址,如果忘记,将导致访问不了。
通过以上情况再次分析,我们通过nginx服务访问swagger接口时, 是通过localhost进行访问,那如果解决localhost 是不是swager就通过了。
localhost访问不通,分析服务器发现,/etc/host未配置ip与地址对应关系,导致localhost访问不了,将localhost与服务器ip地址映射配置后,重新访问swagger接口,调用接口正常。
最后
以上就是生动路人最近收集整理的关于nginx代理后,swagger报TypeError: Failed to fetch错误nginx代理后,swagger报TypeError: Failed to fetch错误的全部内容,更多相关nginx代理后,swagger报TypeError:内容请搜索靠谱客的其他文章。
发表评论 取消回复