2014-10-20 143 views
0

我去了微軟開發者網站,獲得了客戶端ID和客戶端密碼。此錯誤消息是什麼意思?

以下是我的源代碼。我更換了最後兩位數字與XX

<?php 

$ClientID='000000004C12B0XX'; 
$ClientSecret='yAFqUbNwCqSbs-dQJ5BzF1tWBZggFWXX'; 

$ClientSecret = urlencode($ClientSecret); 
$ClientID = urlencode($ClientID); 

// Get a 10-minute access token for Microsoft Translator API. 
$url = "https://datamarket.accesscontrol.windows.net/v2/OAuth2-13"; 
$postParams = "grant_type=client_credentials&client_id=$ClientID&client_secret=$ClientSecret&scope=http://api.microsofttranslator.com"; 

$ch = curl_init(); 

curl_setopt($ch, CURLOPT_URL, $url); 

curl_setopt($ch, CURLOPT_POSTFIELDS, $postParams); 

curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); 

$rsp = curl_exec($ch); 

print $rsp; 
?> 

而且我收到錯誤消息是

{ 
    "error":"invalid_client", 

    "error_description":"ACS50012: Authentication failed. 

    Trace ID: e2f0bfde-d086-4900-ba1f-a58f02693dac 

    Correlation ID: 3750d010-2e9f-45c5-8ba0-f28dfc050909 

    Timestamp: 2014-10-20 17:20:26Z" 
} 

回答

0

我知道,那是很古老的問題,但微軟有這麼多的ID ..我也是與「invalid_client」錯誤混淆。微軟的意思是客戶端ID是一個值,在「客戶端ID」列中指向https://datamarket.azure.com/developer/applications。這是您在創建應用程序時指出的ID。客戶端ID可以是任何字符串,例如「myid」是有效的客戶端ID。

$ ClientID ='000000004C12B0XX';

看起來像生成的值,而不是用戶指向的。