查阅相关文档,body类型是application/x-www-form-urlencoded已经实现了:location ~* (/bodytest/) {
proxy_pass_header Server;
proxy_set_header Host $http_host;
proxy_set_header trace_id $traceid;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
set $backend '';
rewrite_by_lua_block {
ngx.req.read_body();
local value = ngx.req.get_post_args();
data = "">["num"];
if (data == "1000")
then
ngx.var.backend = "login";
elseif (data == "2000")
then
ngx.var.backend = "member_server";
else
ngx.var.backend = "weixinauth";
end
}
proxy_pass http://$backend;
}
但现在要实现body的类型是application/json的,根据body中的某个字段进行转发,比如下面的payCode字段
{
"storeNo" : "0088",
"posNo" : "008801",
"teminalFeature" : "6a28be288c04489a8561a9244a79b21d",
"tenantId" : "testbn01",
"uuid" : "44eab4186f254495af6c8fc9fd9794bf",
"orderNumber" : "0088160114170747",
"payCode" : "281909881906765572",
"amount" : 0.07,
"busType" : {
"code" : "ThirdPartyService",
"name" : "储值"
},
}
在官网也没有找到相关资料,不知道各位大神有没有实现过啊,请指教,谢谢大家!!!