2016-03-16 33 views
1

我正在研究简单的Web应用程序,我需要从我的应用程序中的Outlook API获取访问令牌以使用员工姓名及其图像。我编写了代码并并能够通过Outlook登录,但我的访问令牌来为null.Please在下面找到我的代码:如何从Outlook API获取访问令牌到asp.net Web应用程序

public void GetResponseCallback(IAsyncResult asynchronousResult) 
{ 
    HttpWebRequest request = (HttpWebRequest)asynchronousResult.AsyncState; 

    // End the operation 
    HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(asynchronousResult); 
    Stream streamResponse = response.GetResponseStream(); 
    StreamReader streamRead = new StreamReader(streamResponse); 
    string responseString = streamRead.ReadToEnd(); 
    access_token = responseString; 
    // Close the stream object 
    streamResponse.Close(); 
    streamRead.Close(); 

    // Release the HttpWebResponse 
    response.Close(); 
    allDone.Set(); 
} 
+0

您是否在您的请求中使用'UserAgent'? –

+0

不,我不使用UserAgent – user3714403

+0

你必须添加一些头像'UserAgent'或'Content-Type'或'Connection',其中最重要的是响应第一个获取请求的cookie。尝试添加这些标题并尝试相互更改这些标题以获得所需的响应。 –

回答

1

HttpWebRequest的要求=(HttpWebRequest的)WebRequest.Create( “某些URL”);

request.Method =“POST”;

request.ContentType =“application/x-www-form-urlencoded”;

request.UserAgent =“Mozilla/5.0(compatible; MSIE 9.0; Windows NT 7.1; Trident/5.0)”;

request.Accept =“/”;

request.UseDefaultCredentials = true;

request.Proxy.Credentials = System.Net.CredentialCache.DefaultCredentials;

doc.Save(request.GetRequestStream());

HttpWebResponse resp = request.GetResponse()as HttpWebResponse;

希望它有帮助

相关问题