2017-11-18 216 views
0

我正在嘗試使用正確的Subscription-Key爲azure樣本進行人臉識別以下代碼片段。我得到了錯誤的請求400 - 任何人都可以幫助我如何發送請求正文爲這個Ajax調用工作。Azure Face API標識 -​​ 錯誤請求400

<!DOCTYPE html> 
<html> 
<head> 
    <title>JSSample</title> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script> 
</head> 
<body> 

<script type="text/javascript"> 
    $(function() { 
     var params = { 
      // Request parameters 
     }; 

     $.ajax({ 
      url: "https://api.cognitive.azure.cn/face/v1.0/identify?" + $.param(params), 
      beforeSend: function(xhrObj){ 
       // Request headers 
       xhrObj.setRequestHeader("Content-Type","application/json"); 
       xhrObj.setRequestHeader("Ocp-Apim-Subscription-Key","MY_ACCESS_KEY"); 
      }, 
      type: "POST", 
      // Request body 
      data: "{body}", 
     }) 
     .done(function(data) { 
      alert("success"); 
     }) 
     .fail(function() { 
      alert("error"); 
     }); 
    }); 
</script> 
</body> 
</html> 
+0

你不應該提供您的私人公共:) OCP-APIM-訂閱的重點。您可能希望使用某些字符串(如MY_ACCESS_KEY)刪除該字符串。 – Ronak

回答

0

這裏的網址似乎很糟糕。兩件事:1)您需要在api.cognitive.microsoft.com和2)之前追加位置.cn應該是.com。您的網址可能是這樣的,根據您的位置:

url: "https://westus.api.cognitive.azure.com/face/v1.0/identify?" 

多個位置,詳情請看這裏:https://eastasia.dev.cognitive.microsoft.com/docs/services/563879b61984550e40cbbe8d/operations/563879b61984550f30395239

+0

我需要知道請求中的含義。數據:「{body}」, – user3008819

+0

它只需要JSON響應的「body」部分,並刪除可能包含敏感信息(例如訪問密鑰/可選客戶端ID等)的標頭信息。您可以將此信息用於控制檯/其他輸出而不用擔心任何標題信息。 – Ronak