gpt4 book ai didi

Azure Function App 代理正在删除查询字符串

转载 作者:行者123 更新时间:2023-12-03 02:33:01 24 4
gpt4 key购买 nike

一个简单的代理重定向到我们的 www 子域会导致查询字符串被删除。

没有理由这样做。

已获取此网址.. https://mydomain.ok/whatever?foo=something

应该重定向到.. https://www.mydomain.ok/whatever?foo=something

相反,它当前重定向到.. https://www.mydomain.ok/whatever

任何帮助将不胜感激。正确测试这一点非常困难。

对于以下内容,REDIRECT_TO_WEBSITE=www.domain.com

这是示例配置:

{
"$schema": "http://json.schemastore.org/proxies",
"proxies": {
"api": {
"matchCondition": {
"route": "/api/{*path}"
},
"backendUri": "https://%WEBSITE_HOSTNAME%/api/{path}"
},
"rest": {
"matchCondition": {
"route": "{*rest}"
},
"responseOverrides": {
"response.statusCode": "302",
"response.headers.Location": "https://%REDIRECT_TO_WEBSITE%/{rest}",
},
}
}
}

最佳答案

找到另一个SO问题的答案:Azure Function Proxies Multiple Query parameters with the same name

您只需将 request.querystring 添加到 backend.request.querystring 即可:

"requestOverrides": {
"backend.request.querystring": "request.querystring"
}

所以,你的配置是:

{
"$schema": "http://json.schemastore.org/proxies",
"proxies": {
"api": {
"matchCondition": {
"route": "/api/{*path}"
},
"backendUri": "https://%WEBSITE_HOSTNAME%/api/{path}"
"responseOverrides": {
"backend.request.querystring": "request.querystring"
},
},
"rest": {
"matchCondition": {
"route": "{*rest}"
},
"responseOverrides": {
"response.statusCode": "302",
"response.headers.Location": "https://%REDIRECT_TO_WEBSITE%/{rest}",
"backend.request.querystring": "request.querystring"
},
}
}
}

值得指出的是,根据该线程的评论者的说法:“...从 .NET 6.0 开始,不再支持函数代理,请改用 API 管理服务”

关于Azure Function App 代理正在删除查询字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64270928/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com