0

Microsoft 開発者の Web サイトにアクセスし、クライアント ID とクライアント シークレットを取得しました。

そして、以下は私のソースコードです。最後の 2 桁を 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"
 }
4

1 に答える 1

0

私は知っています、それは非常に古い質問ですが、マイクロソフトには非常に多くのIDがあります..「invalid_client」エラーにも混乱しました。Microsoft は、クライアント ID が値であり、https://datamarket.azure.com/developer/applicationsの [クライアント ID] 列で指定されていることを意味します。アプリケーションを作成したときに指定した ID です。クライアント ID には任意の文字列を指定できます。たとえば、「myid」は有効なクライアント ID です。

$ClientID='000000004C12B0XX';

ユーザーが指摘したのではなく、生成された値のように見えます。

于 2015-06-14T12:44:16.643 に答える