gpt4 book ai didi

本地主机上的 Azure Functions 代理 404

转载 作者:行者123 更新时间:2023-12-01 21:34:46 25 4
gpt4 key购买 nike

我有一个 Azure 函数应用程序,其 URL http://localhost:7072/api/create-room 上有一个函数以及其他函数。此特定函数是一个允许匿名访问的 HTTPTrigger 并接受 GET 谓词:

[HttpTrigger(AuthorizationLevel.Anonymous, "get")]

除此之外,我还有一个单独的函数应用程序,它仅托管一个 proxies.json 文件,并且仅充当函数代理。我的代理功能在本地端口 7071 上运行。

我的代理文件当前如下所示:

{
"$schema": "http://json.schemastore.org/proxies",
"proxies": {
"chatNegotiate": {
"matchCondition": {
"route": "/api/chat/negotiate",
"methods": [
"POST"
]
},
"backendUri": "%chat_api%/api/BeginNegotiate"
},
"chatMessages": {
"matchCondition": {
"route": "/api/chat/messages",
"methods": [
"POST"
]
},
"backendUri": "%chat_api%/api/PostMessage"
},
"createRoom": {
"matchCondition": {
"route": "/api/create-room",
"methods": [
"GET"
]
},
"backendUri": "%session_api%/api/CreateRoom"
}
}
}

当这两个函数应用程序都部署到 Azure 时,一切都像梦一样。我可以提出请求,请求被转发,请求返回。这一切都是辉煌的。

但是,当我在本地运行这些函数时,请求永远不会从代理转发,代理会返回 404。我可以在 7072 上本地运行的其他函数应用上调用该函数直接,一切都很好,但当我通过代理获得时,一切都不好。

代理本身返回:

[30/05/2020 18:24:30] Host lock lease acquired by instance ID '0000000000000000000000002D5B6BEA'.
[30/05/2020 18:24:34] Executing HTTP request: {
[30/05/2020 18:24:34] "requestId": "9004b8e2-f208-4a98-8b48-6f85bca41281",
[30/05/2020 18:24:34] "method": "GET",
[30/05/2020 18:24:34] "uri": "/api/create-room"
[30/05/2020 18:24:34] }
[30/05/2020 18:24:34] Executed HTTP request: {
[30/05/2020 18:24:34] "requestId": "9004b8e2-f208-4a98-8b48-6f85bca41281",
[30/05/2020 18:24:34] "method": "GET",
[30/05/2020 18:24:34] "uri": "/api/create-room",
[30/05/2020 18:24:34] "identities": [],
[30/05/2020 18:24:34] "status": 404,
[30/05/2020 18:24:34] "duration": 15
[30/05/2020 18:24:34] }

从我看过的例子来看,例如 https://chsakell.com/2019/02/03/azure-functions-proxies-in-action/ ,这应该可以正常工作。

有什么建议吗?预先感谢您提供的任何帮助!

最佳答案

我终于解决了这个问题。

默认情况下,proxies.json 未设置为复制到输出目录。

您需要确保将其设置为始终复制

在 Visual Studio 中:

右键单击proxies.json > 单击属性> 将复制到输出目录设置为始终复制

在 Visual Studio Code(和其他编辑器)中:打开 ProjectName.csproj 并添加一个条目以始终将 proxies.json 复制到输出目录。

<ItemGroup>
<None Update="proxies.json">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>

关于本地主机上的 Azure Functions 代理 404,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62107056/

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