如何解决PowerShell Azure Functions $TriggerMetadata Methode 是 GET 但应该是 POST
我是 Azure Functions 的新手,所以这可能很明显。
它是这样的:
我有一个 Powershell Azure Functions HTTP Trigger Function with Pode,它有一个 GET 和一个 POST 路由。现在,当我通过 Postman、Invoke-WebRequest 或除 Azure 测试工具之外的任何其他工具发送 POST 请求时,我最终会进入 GET 路由。
我的调试显示 $TriggerMetadata
在这些情况下包含 '"Method": "GET"'。 '"Method": "POST"' 仅当请求来自 Azure 测试工具本身时。
我遇到了一个谜语。我希望有人可以帮助我。
我的代码:
param($Request,$TriggerMetadata)
$endpoint = '/api/Object'
Write-Host "$endpoint - PowerShell HTTP trigger function processed a request."
Start-PodeServer -Request $TriggerMetadata -ServerlessType AzureFunctions {
# get route that can return data
Add-PodeRoute -Method Get -Path $endpoint -ScriptBlock {
Write-Host "$endpoint - Get"
#doing stuff
}
# post route to create some data
Add-PodeRoute -Method Post -Path $endpoint -ScriptBlock {
Write-Host "$endpoint - Post"
#doing stuff
}
}
我的函数.json:
{
"bindings": [
{
"authLevel": "function","type": "httpTrigger","direction": "in","name": "Request","methods": [
"get","post"
]
},{
"type": "http","direction": "out","name": "Response"
}
]
}
解决方法
非常抱歉,特别是这次很不满意,但是问题已经不存在了。
我强烈怀疑这是 Azure 中的一个错误,因为我没有进行任何更改并且一切都恢复正常了。
我猜是时候检查 Azure Functions SLA 了。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。