如何从我的站点启动azure web作业?

如何从我的站点启动azure web作业?,azure,azure-webjobs,Azure,Azure Webjobs,我将azure web作业用于一个计划。我想使其成为按需格式,并希望在单击网站上的按钮后开始作业。有可能吗 提前感谢。您可以使用触发WebJob POST /api/triggeredwebjobs/{job name}/run 也有。如果您触发了调度程序,这反过来又触发了web作业。要访问调度器API,您需要具有订阅/web应用访问权限的Azure AD凭据。它与凭据一起动态提供。您可以通过WebJob API触发WebJob。C#代码包含在以下帖子中: 这必须在服务器端完成,因为您不希望

我将azure web作业用于一个计划。我想使其成为按需格式,并希望在单击网站上的按钮后开始作业。有可能吗

提前感谢。

您可以使用触发WebJob

POST /api/triggeredwebjobs/{job name}/run

也有。如果您触发了调度程序,这反过来又触发了web作业。要访问调度器API,您需要具有订阅/web应用访问权限的Azure AD凭据。它与凭据一起动态提供。

您可以通过WebJob API触发WebJob。C#代码包含在以下帖子中:


这必须在服务器端完成,因为您不希望授权信息暴露在客户端。

重要的部分是从主站点向scm站点进行身份验证。除了使发布凭据可用(例如,通过应用程序设置)之外,没有其他简单的方法。您的父辈是否使用.net技术?我使用的另一个选项是使用WebJobs SDK QueueTrigger,只需将消息加载到队列中即可开始逻辑运行。
HttpClient client = new HttpClient();
client.BaseAddress = new Uri("https://mysiteslot.scm.azurewebsites.net/api/");
// the creds from my .publishsettings file
var byteArray = Encoding.ASCII.GetBytes("username:password");
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(byteArray));
// POST to the run action for my job
var response = await client.PostAsync("triggeredwebjobs/moJobName/run", null)