以编程方式列出Azure连续WebJob的功能

时间:2018-07-23 00:39:40

标签: azure azure-storage azure-webjobssdk

我想使用C#代码列出Azure连续WebJobs的功能。是否可以使用Kudu的API实现此目的?还是有其他选择来获取此列表?

1 个答案:

答案 0 :(得分:1)

您可以使用KUDU API列出所有触发器Webjob。 使用GET /api/continuouswebjobs

请参考以下代码:

string userName = "$";

string userPassword = "";

string webAppName = "";

var base64Auth = Convert.ToBase64String(Encoding.Default.GetBytes($"{userName}:{userPassword}"));

using (var client = new HttpClient())
{
    client.DefaultRequestHeaders.Add("Authorization", "Basic " + base64Auth);
    var baseUrl = new Uri($"https://{webAppName}.scm.azurewebsites.net/");
    var requestURl = baseUrl + "api/continuouswebjobs";
    var response = client.GetAsync(requestURl).Result.Content.ReadAsStringAsync();
    var json = JArray.Parse(response?.Result);
    List<string> list = new List<string>();
    for (int i = 0; i < json.Count; i++)
    {
        var name = json[i]["name"];
        list.Add(name.ToString());
    }
}

WebJob API需要Basic Authentication使用发布凭据,here讨论了不同类型的凭据。您可以从Get Publish Profile的Azure门户下载发布凭据。

输出如下: enter image description here