1
我試圖從Microsoft Live API獲取數據。但是,當我嘗試獲取access_token時,我得到415(不支持的媒體類型)錯誤消息。我看起來幾乎到處都是,但我找不到任何答案(對我有用)。Microsoft Live定製C#REST API錯誤415
這裏是我的(部分)的代碼,試圖獲得令牌(dataToWrite切割機的可讀性,它在實際一行代碼):
WebRequest request;
request = WebRequest.Create("https://login.live.com/oauth20_token.srf");
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
var dataToWrite = "code=[code]&
client_id=[client_id]&
client_secret=[client_secret]&
redirect_uri=[redirect_uri]&
grant_type=authorization_code";
var buffer = Encoding.ASCII.GetBytes(dataToWrite);
request.ContentLength = buffer.Length;
var dataStream = request.GetRequestStream();
dataStream.Write(buffer, 0, buffer.Length);
dataStream.Close();
var response = request.GetResponse();
var responseStream = response.GetResponseStream();
凡「[]」是:
- [code]是一個字符串,由微軟在用戶登錄後給出(這部分代碼有效);
- [client_id]是微軟給出的一個字符串,代表我的客戶端ID;
- [client_secret]是微軟給出的一個字符串,代表我的客戶機密;
- [REDIRECT_URI]是該網站的回報位置的URL(同爲用戶同意的代碼中使用的URL(參見[代碼]))
根據微軟Live API的手冊(http://msdn.microsoft.com/en-us/library/live/hh243647.aspx )這應該工作。但是,文檔不是很詳細。
有誰知道爲什麼我不斷收到錯誤?
謝謝!