本文介绍了在C#中停用和激活Azure Web作业的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个问题,我想在部署新版本时停用AppService的Web作业,并在重新部署后激活它们。
在C#中是否可以这样做?
谢谢你们
推荐答案
据我所知,您不能直接停止触发的Web作业,您需要利用进程资源管理器通过KUDU来终止它。对于连续的Web作业,您可以利用WebJobs API启动/停止Web作业,您需要使用您的Web应用程序的Deployment credentials使用基本身份验证来调用指定的REST API。以下是用于停止Web作业的C#代码片段:
string username = "{username}";
string password = "{password}";
string jobname = "{your-webjob-name}";
string authorization = Convert.ToBase64String(System.Text.UTF8Encoding.UTF8.GetBytes($"{username}:{password}"));
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", authorization);
var res = await client.PostAsync($"https://{your-webapp-name}.scm.azurewebsites.net/api/continuouswebjobs/{jobname}/stop", null);
Console.WriteLine($"StatusCode:{res.StatusCode}");
}
注意:此时,名为disable.job
的文件将添加到您的Web作业中,如下所示:
/api/continuouswebjobs/{job name}/start
,disable.job
文件将被删除,您的Web作业将再次运行。
这篇关于在C#中停用和激活Azure Web作业的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!