我使用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/