我尝试通过 Linux 和 Windows 机器上的 UI 创建一个简单的 Azure Functions 应用程序,它可以工作。然而,拥有一个简单的代理配置似乎被完全忽略了。它也不能使用提供的 Docker 基础映像在本地工作。
该应用在最新的 azure 函数运行时 ~3 上使用 Node v12 运行时,所有默认值:
主机.json
{
"version": "2.0",
"extensions": {
"http": {
"routePrefix": ""
}
},
"functions": [ "hello" ]
}
你好/function.json
{
"disabled": false,
"bindings": [
{
"type": "httpTrigger",
"direction": "in",
"name": "req",
"methods": ["get", "post"],
"route": "/bar",
"authLevel": "anonymous"
},
{
"type": "http",
"direction": "out",
"name": "$return"
}
]
}
你好/index.js
module.exports = async (context, req) => {
return {status: 200, body: 'ok'}
}
代理.json
{
"$schema": "http://json.schemastore.org/proxies",
"proxies": {
"something": {
"matchCondition": {
"route": "/foo",
"methods": [
"GET",
"POST"
]
},
"backendUri": "https://[INSERT APP NAME HERE].azurewebsites.net/bar"
}
}
}
导航到在屏幕上https://[INSERT APP NAME HERE].azurewebsites.net/bar
显示小消息。ok
然而,导航到https://[INSERT APP NAME HERE].azurewebsites.net/foo
返回 404。
我尝试了许多其他代理配置,此时我的假设是代理配置被完全忽略。如果这有什么不同,我会参加免费消费计划。