我有一个简单的任务,但似乎很难在互联网上找到解决方案。
我的目标是修改/更改我的 Nginx 代理返回给调用者的响应,例如:假设以下 GET http://somehost/somejsom 我从 Nginx 获得的实际响应是这样的 Json:
{
"propA": "valueA",
"propB": "valueB"
}
我需要将“propA”的值更改为“valueC”,甚至简单执行以下替换操作:
replace("\"propA\": \"valueA\"", "\"propA\": \"valueC\"")
如果我仅当请求正文包含指定值时才能执行此替换,则可以获得加分。
答案1
您可以通过启用nginx ngx_http_sub_module。这还允许您进行简单的字符串替换。
另一种方法是nginx_substitutions_filter还支持正则表达式