我正在尝试使用 GitHub Actions 工作流程将带有 .NET 7 的 Azure Function(隔离)部署到 MS Azure。一切似乎运行良好,但由于某种原因,当我将其部署到云时,该功能未加载。当我运行本地主机功能时,一切都很好(在我的机器上工作),但部署后就不行了。
public class DemoFunction
{
private readonly ILogger _logger;
public DemoFunction(ILoggerFactory loggerFactory)
{
_logger = loggerFactory.CreateLogger<DemoFunction>();
}
[Function("DemoFunction")]
public HttpResponseData Run([HttpTrigger(AuthorizationLevel.Anonymous, "get", "post")] HttpRequestData req)
{
var response = req.CreateResponse(HttpStatusCode.OK);
response.Headers.Add("Content-Type", "text/plain; charset=utf-8");
response.WriteString("Demo function works!");
return response;
}
}
Run Code Online (Sandbox Code Playgroud)
Function App 仅包含一个具有 HTTP 绑定的函数(无需身份验证,允许匿名请求)。我使用 Bicep 部署基础设施,使用 GH Actions 部署 Function App。日志分析显示了这一点:

因此,由于某种原因,它确实找到了该函数,但没有加载它。如果我导航到 Azure 门户中的“功能”边栏选项卡,我看不到任何功能。该项目只是一个 POC 项目,可在https://github.com/nikneem/function-deployment-with-gh-actions上公开托管
有任何想法吗?
我正在尝试在 ASP.NET Core 3 中创建一个 Angular SPA。所以我开始了一个新项目,使用了 Angular 模板并将所有包更新到 Angular 8.2.9 版。到目前为止一切顺利,获得了一个很好的到 Azure 的 CI/CD 管道,网站运行起来很吸引人。
但是,现在我正在尝试向应用程序添加 PWA 功能。所以我根据 angular (ng add @angular/pwa) 的文档添加了 PWA,一切似乎都很好。有一个不错的 manifest.webmanifest 文件,所有预期的更改都按预期应用。但是,当我运行该事物并开始审核时,使 PWA 可安装的要求失败了。
我得到的错误: - 此页面由 Service Worker 控制,但是没有找到 start_url,因为没有获取清单。- 失败:未获取清单。
看起来清单文件确实被提取了,但是 MIME 类型有问题(text/html)。欢迎在这里提出任何建议...
我正在尝试创建一个在 AZ ServiceBus 队列消息上触发的 Azure 函数。该消息包含一个 GUID 字符串,与 AZ 存储上的 BLOB 的名称匹配。我想通过输入绑定获得该 BLOB,但我不确定如何...
我试过 :
public static async Task Run(
[ServiceBusTrigger("outgoing-mail", Connection = "QueueConnString")] string inputMessage,
[Blob("email-messages/{inputMessage}", FileAccess.Read)] Stream mailBlob,
[SendGrid(ApiKey = "%SendgridApiKey%")] IAsyncCollector<SendGridMessage> messageCollector,
ILogger log)
Run Code Online (Sandbox Code Playgroud)
我还顺便在 blob 路径上尝试了 {serviceBusTrigger},但无论哪种方式,我都会收到以下异常:
Microsoft.Azure.WebJobs.Host:索引方法“SendMailQueueWorker”时出错。Microsoft.Azure.WebJobs.Host:无法解析绑定参数“inputMessage”。绑定表达式必须映射到触发器提供的值或触发器绑定到的值的属性,或者必须是系统绑定表达式(例如 sys.randguid、sys.utcnow 等)。
我确定队列的输入消息是一个字符串,如何在BLOB的输入绑定中使用这个消息内容?
[编辑]
我向 UserVoice 添加了功能请求,所以如果你也遇到这个问题,请投票!
https://feedback.azure.com/forums/355860-azure-functions/suggestions/37528912-combine-servicebus-queue-message-with-storage-inpu
[/edit]