我已经设置了NGINX服务器,我想接受一个请求并将其转发到TCP端口上的另一个应用程序。
假设我具有以下JSON负载
LengthAwarePaginator
这是在如下查询参数中发送的
{
"someKey1": 1234,
"someKey2": "a string"
}
是否可以使用NGINX将JSON有效负载本地转发到TCP端口1234?
此外,在将上述有效负载转发到TCP端口1234之前,我可以对其进行任何预处理吗?例如,我想将上述JSON隐蔽为
https://mywebsite.com?payload=%7B%0A%20%22someKey1%22%3A%201234%2C%0A%20%22someKey2%22%3A%20%22a%20string%22%0A%7D
然后将这些数据转发到TCP端口1234
我想知道,我必须使用诸如springboot之类的东西来创建某种REST端点,但是如果可能的话,我真的很想尝试使用NGINX来完成上述任务。
答案 0 :(得分:1)
Nginx的主要用途是HTTP服务器/代理。 可以通过ngx_http_lua_module编写脚本,但是对于您的任务,制作一个将侦听HTTP并转发您的自定义协议的应用程序/微服务,或者修改您侦听所提到的端口以理解HTTP的应用程序,要简单得多。
当端点使用HTTP时-nginx可用于路由:
location /some_path/ {
proxy_pass http://localhost:1234/;
}
location /some_other_path/ {
proxy_pass http://localhost:1235/;
}
答案 1 :(得分:0)
NGINX是简单的Web服务器,它接受HTTP请求并将其转发到配置的位置(可以是应用程序服务器或任何其他Web服务器),然后通过HTTP响应给请求者。无法在NGINX内部处理数据。
您可以在NGINX安装目录的default
目录下的sites-available
文件中配置转发规则。
Here是NGINX配置的不错的教程,可能会对您有所帮助。