访问http接口时返回502 Bad Getway什么原因怎么解决
使用 httpclient 工具通过代理服务器请求第三方http 接口,多次返回 502 Bad Getway,少数返回正常。
502 Bad Getway是什么意思?
502 Bad Gateway是指错误网关,无效网关;在互联网中表示一种网络错误。表现在WEB浏览器中给出的页面反馈。含义:这通常并不意味着上游服务器已关闭(无响应网关/代理) ,而是上游服务器和网关/代理使用不一致的协议交换数据。鉴于互联网协议是相当清楚的,它往往意味着一个或两个机器已不正确或不完全编程。
这到底是什么错?啥意思?无从下手。
想着是不是还是协议不一致导致的?
于是我又把协议这方面的 http 对 https ,这样互相排列组合的改了几次还是不行。
然后我就在网上搜这个问题咋解决,无意中在一个国外的网站上看到有人问这个问题咋解决。
其中一个回复说【您可能正在使用代理来获取ssl内容,但您的代理设置是错误的。您应该考虑使用http作为代理方案,然后使用https作为实际内容的方案。这解决了我的问题】
说的好准,确实使用了代理。
我是在使用代理时设置的代理为HTTPS,后来我改成 HTTP 。又遇到另一个问题,证书的问题,参考httpclient信任所有证书解决SSLException:Unrecognized SSL message,plaintext connection
继续改,最后终于好了。
另外有其他原因导致502以及其他常见错误可以参考:错误代码502、504、 400
说的再好,不如行动。不怕慢,就怕站。