当前位置:首页 > 资讯 > 正文

express 处理代理请求(express-http-proxy)

express 处理代理请求(express-http-proxy)

  1. express-http-proxy使用方法

开发中,不能直接访问接口服务器,因此需要使用代理

解决办法

插件可以实现express代理

express 注册proxy

 

proxy()参数说明

  1. 第一个参数: 代理的服务器地址和端口,必填
  2. 第二个参数: 关于代理的配置参数,可以不填,使用默认配置

web页面ajax请求调用代理

 
 

forwardPath

forwardPath选项用于在代理请求之前修改路径

 

forwardPathAsync

forwardPathAsync选项用于在发送代理请求之前之前,使用Promise异步修改请求路径

 

filter

filter选项主要用于筛选哪些请求可以被代理转发,例如,你只想转发get请求

 

intercept

intercept选项用于在将响应返回给客户端之前,对响应做处理

 

decorateRequest

与intercept相反,decorateRequest选项用于在请求通过代理转发至目标主机之前,对请求进行处理

 

https 请求的协议类型与原始请求保持一致

通常代理请求的协议类型与原始请求保持一致,如果代理请求需要用https协议,可以用https选项强制实现

 

preserveHostHdr 将HTTP头部复制到express代理服务器的HTTP头部

可以用preserveHostHdr选项将HTTP头部复制到express代理服务器的HTTP头部

 

reqAsBuffer 请求体(req.body)编码为Node Buffer

这是一个实验选项,用于在发送代理请求时,保证请求体(req.body)编码为Node Buffer

 

reqBodyEncoding 编码格式

request body默认编码格式为 utf-8。
当代理请求体为Buffer时,使用null来保存缓冲(例如,图像上传) ,接受 raw-body支持的任何值。
编码格式也可以通过intercept选项实现

 

timeout 增加超时

默认情况下。node在连接过程中,是没有timeout的。使用timeout选项增加超时,Timed-out requests 将会返回504和X-Timeout-Reason header。