我使用DevOps将连续的WebJobs部署到了我现有的Azure WebApp。它已启动并正在运行。

当我尝试在Azure Web前端中停止webJob时,它不起作用。
所以我用了stop Command of the Azure WebApp API

POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs/{webJobName}/stop?api-version=2016-08-01

令人惊讶的是,此调用返回了404错误。

但是,当我执行Get Continuous WebJob Command时,它将返回有关webJob的所有信息,这意味着可以找到它。
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/continuouswebjobs/{webJobName}?api-version=2016-08-01

我也尝试使用Kudu API
POST /api/continuouswebjobs/{job name}/stop

但是,stop命令导致相同的404响应消息,而get命令导致WebJob处于“运行”状态的肯定结果。
GET /api/continuouswebjobs/{job name}

是否有任何这种行为的原因?如何使用上述发布请求启动/停止WebJob。

最佳答案

事实证明,我的部署方式是问题的根源。

Daniels对question的回答对我很有帮助。

基本上,您需要在WebApp中创建一个虚拟应用程序,然后从Azure Devops中将WebJob部署到此应用程序。

通过这种方式完成操作后,您就可以使用上述所有API成功启动/停止连续的webjob。

关于azure - 使用Azure WebApp Rest API启动和停止连续Azure WebJob会导致404错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57991270/

10-11 08:52