万事须己运,他得非我贤。这篇文章主要讲述#yyds干货盘点# 使用 http-proxy 实现 SAP UI5 请求的代理重定向相关的知识,希望能为你提供帮助。
http-proxy 是一个有用的代理工具库,适用于 HTTP 请求的代理和重定向。
创建代理服务器的方法:
var httpProxy = require(http-proxy);
var proxy = httpProxy.createProxyServer(options);
options 为代理服务器创建参数。
一些例子:创建代理服务器,监听在 8000 端口上,收到请求后,会转发给 端口 9000 的服务器上。
var http = require(http),
httpProxy = require(http-proxy);
//
// Create your proxy server and set the target in the options.
//
httpProxy.createProxyServer(target:http://localhost:9000).listen(8000);
// See (?)
端口 9000 的服务器,只是简单地发送一个请求代理成功的提示信息。
//
// Create your target server
//
http.createServer(function (req, res)
res.writeHead(200,Content-Type: text/plain );
res.write(request successfully proxied! + \\n + JSON.stringify(req.headers, true, 2));
res.end();
).listen(9000);
看个具体的例子。
我在一个 SAP UI5 应用的 manifest.json 文件里,定义了一个 dataSources,名叫 invoiceRemote,uri 为:
【#yyds干货盘点# 使用 http-proxy 实现 SAP UI5 请求的代理重定向】http://localhost:8082/https://services.odata.org/V2/Northwind/Northwind.svc/
文章图片
这样,该 SAP UI5 应用,会发送一个 url,到 localhost 8082 去请求元数据。
因此,我需要有一个自己的服务器,监听在端口 8082 上:
var http = require(http),
httpProxy = require(http-proxy);
//
// Create your proxy server and set the target in the options.
//
httpProxy.createProxyServer(target:http://localhost:9000).listen(8082);
并且通过 target:http://localhost:9000 的服务器构造函数参数,指定当监听在端口 8082 的服务器接收到 HTTP 请求后,自动转发到监听在 9000 端口的服务器上。
文章图片
在端口 9000 上监听的服务器,收到请求后只是简单的发送 request successfully proxied 的响应:
http.createServer(function (req, res)
res.writeHead(200,Content-Type: text/plain );
res.write(request successfully proxied! + \\n + JSON.stringify(req.headers, true, 2));
res.end();
).listen(9000);
测试:在浏览器里输入如下 url:
http://localhost:8082/https://services.odata.org/V2/Northwind/Northwind.svc/
文章图片
该请求依次经历了下列的处理逻辑:
- 请求被代理服务器 8082 成功拦截;
- 请求被代理服务器 8082 转发到服务器 9000;
- 请求在服务器 9000 被处理,请求明细被序列化成 JSON 字符串,作为输出发送给 HTTP 请求的响应结构。
推荐阅读
- HBuilderX-好用的WEB前端开发工具
- OpenHarmony标准设备应用开发——布局动画与音乐
- Nginx的安装与配置
- nacos集群部署
- jenkins无法正常安装publish-over-ssh
- 国内首个《政务APP技术指标评价规范》团体标准正式出台
- centos7 中文乱码问题解决方法
- centos 下编译安装php7.3的redis扩展
- 2022年1月云主机性能评测报告,移动云升至第三