繁体   English   中英

Azure function 应用程序在从部署的 web 应用程序调用时未触发

[英]Azure function app is not triggering while calling from deployed web app

我创建了一个 httpTrigger azure function 并尝试从我的 azure Z2567A5EC9705EB7893 应用程序访问它。 web 应用程序和 azure function 属于同一资源组。

从邮递员和本地主机调用已发布的 azure function 时,它运行良好,没有任何问题。 将 web 应用程序发布到 azure 后,出现错误

'没有这样的主机是已知的'

. function 触发器在“监视器”选项卡中根本不可见

Web 应用调用

        HttpClient client = new HttpClient();
        var content = new StringContent(JsonConvert.SerializeObject(functionRequest), Encoding.UTF8, "application/json");
        client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", authToken);
        var status = client.PostAsync(url, content).Result;

Azure function 应用程序

        public async Task<HttpResponseMessage> HttpStart(
            [HttpTrigger(AuthorizationLevel.Anonymous, "post")] HttpRequestMessage req,
             [DurableClient] IDurableClient starter,
            ILogger log, ClaimsPrincipal principal)
        {
        }

任何帮助将不胜感激。

我尝试创建DurableClient触发器,并在门户中测试它,但不在 web 应用程序中进行测试,它对我有用。

所以我认为你应该改变你的urlvar status = client.PostAsync(url, content).Result; . 你会解决这个问题。

请求 url 后,从Get function URL 您将获得idstatusQueryGetUrisendEventPostUriterminatePostUripurgeHistoryDeleteUri 更多细节可以参考官方文档

在此处输入图像描述

你可以从statusQueryGetUri得到你想要的东西。

在此处输入图像描述

感谢大家的帮助。 我发现了这个问题。 The url I got from the azure function blade was private url, which works from localhost even postman. 但是我必须使用网关公开 url,这也适用于 azure

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM