Azure 函数 - 将所有请求发送到同一个函数
Azure function - send all requests to the same function
我正在尝试设置 Azure 函数,以便将所有请求发送到同一个函数。 proxies.json
文件非常简单:
{
"$schema": "http://json.schemastore.org/proxies",
"proxies": {
"Root URI to Redirector Trigger Function": {
"matchCondition": {
"route": "/{*path}",
"methods": [
"GET",
"POST"
]
},
"backendUri": "http://%WEBSITE_HOSTNAME%/myfunc"
}
}
}
到目前为止一切顺利,但是当发送请求时,代理请求最终会再次被代理处理 - 以无限循环结束。
我如何在我的代理中指定代理所有请求接受 /myfunc
资源?
您的配置强制将重定向应用于域中的所有内容。发生重定向时,/myfunc
也会被重定向。
您可以:
1. 将代理的路由更改为不同的内容,f.e。 `/api/{*路径}'。
2. 将您的功能移动到不同的域。
我终于解决了这个问题,虽然不是很优雅。我的 proxies.json
现在看起来像这样:
{
"$schema": "http://json.schemastore.org/proxies",
"proxies": {
"Root URI to Redirector Trigger Function": {
"matchCondition": {
"route": "/{path}",
"methods": [
"GET",
"POST"
]
},
"backendUri": "http://%WEBSITE_HOSTNAME%/"
}
}
}
我还编辑了我的 function.json
以具有 `"route": "/"。现在所有对 root 之外的任何调用都代理到我的函数。对路由的调用最终直接转到函数(需要单独处理)。
我正在尝试设置 Azure 函数,以便将所有请求发送到同一个函数。 proxies.json
文件非常简单:
{
"$schema": "http://json.schemastore.org/proxies",
"proxies": {
"Root URI to Redirector Trigger Function": {
"matchCondition": {
"route": "/{*path}",
"methods": [
"GET",
"POST"
]
},
"backendUri": "http://%WEBSITE_HOSTNAME%/myfunc"
}
}
}
到目前为止一切顺利,但是当发送请求时,代理请求最终会再次被代理处理 - 以无限循环结束。
我如何在我的代理中指定代理所有请求接受 /myfunc
资源?
您的配置强制将重定向应用于域中的所有内容。发生重定向时,/myfunc
也会被重定向。
您可以: 1. 将代理的路由更改为不同的内容,f.e。 `/api/{*路径}'。 2. 将您的功能移动到不同的域。
我终于解决了这个问题,虽然不是很优雅。我的 proxies.json
现在看起来像这样:
{
"$schema": "http://json.schemastore.org/proxies",
"proxies": {
"Root URI to Redirector Trigger Function": {
"matchCondition": {
"route": "/{path}",
"methods": [
"GET",
"POST"
]
},
"backendUri": "http://%WEBSITE_HOSTNAME%/"
}
}
}
我还编辑了我的 function.json
以具有 `"route": "/"。现在所有对 root 之外的任何调用都代理到我的函数。对路由的调用最终直接转到函数(需要单独处理)。