无效的方法(405)Azure StreamAnalytics Rest API

时间:2017-05-09 20:02:12

标签: http azure azure-stream-analytics

我正试图通过我的c#程序使用azure REST API停止并启动Stream Analytics Job。我已经能够为我的数据仓库执行此操作,但现在遇到了问题。

文档:

https://docs.microsoft.com/en-us/rest/api/streamanalytics/stream-analytics-job#stop

    public static void PauseSAJ()
    {
        var request = (HttpWebRequest)WebRequest.Create("https://management.azure.com/subscriptions/" + AzureSubscriptionId + "/resourceGroups/" + RESOURCE_GROUP + "/providers/Microsoft.StreamAnalytics/streamingjobs/" + STREAMING_JOB_NAME + "/stop?api-version=2015-10-01");

        request.Method = "POST";
        request.ContentType = "application/json";
        request.ContentLength = 0;
        request.Headers.Add("Authorization", "Bearer " + AuthToken);

        var response = (HttpWebResponse)request.GetResponse();
        var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
        System.Diagnostics.Trace.WriteLine("Stopping Streaming Analytics Job if not stopped:  " + responseString);
    }

我得到的回复是:远程服务器返回错误:(405)方法不允许。

文档明确指出该方法是POST。我正在使用这种方法的几乎完全复制品来阻止我的DW(请求URL除外)所以我很困惑为什么我遇到问题。 streamAnalytics Azure API是否存在问题?

1 个答案:

答案 0 :(得分:1)

根据您的描述,我已在我的控制台应用程序中测试了您的代码,使用我的参数我可以成功停止我的Stream Analytics Job,如下所示:

enter image description here

enter image description here

  

我得到的答案是:远程服务器返回错误:(405)方法不允许。

我认为您可以尝试利用Fiddler来收集执行代码时的网络跟踪,也可以使用fiddler提供的Composer或使用Postman模拟停止请求,如下所示:

enter image description here