立诚勿怠,格物致知
It's all about connecting the dots

花生壳内网映射导致请求失败

有段时间,不知何故,本地的请求通过node环境中的一个叫http-proxy-middleware的包转发本地请求到别人通过花生壳映射的内网后,总是请求失败,会报错:ORAY-ERROR-3。这个显然不会是朋友那边本地服务器的问题,因为这个服务放在公网上时,里面的服务都是可以用的。

我用的是vue-cli脚手架配套的webpack模版。经过尝试,发现只要修改一下转发的请求头里的Host字段即可。具体要修改的文件为:/build/dev-server.js,需要修改的地方见下面的代码:

// proxy api requests
Object.keys(proxyTable).forEach(function (context) {
  var options = proxyTable[context]
  if (typeof options === 'string') {
    options = { target: options }
  }
  options.headers = {
    'Host': config.hostUsed
  }
  app.use(proxyMiddleware(options.filter || context, options))
})

代码中config.hostUsed即为花生壳内网映射时对应的外网地址,这个值不需要包含http或https这种协议字符,只需要’www.example.com’这部分就可以了。

赞(0) 打赏
文章名称:《花生壳内网映射导致请求失败》
文章链接:https://www.orzzone.com/oray-error-3.html
商业联系:yakima.public@gmail.com

本站大部分文章为原创或编译而来,对于本站版权文章,未经许可不得用于商业目的,非商业性转载请以链接形式标注原文出处。
本站内容仅供个人学习交流,不做为任何投资、建议的参考依据,因此产生的问题需自行承担。

评论 抢沙发

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力提供更多优质内容!

支付宝扫一扫打赏

微信扫一扫打赏

登录

找回密码

注册