2016-03-30 15 views

答えて

0

は、私は私のコントローラに以下のコードを使用することによって、これを達成することができました:

Uri targetWeb = new Uri(HttpContext.Request.QueryString["SPHostUrl"]); 
string targetRealm = TokenHelper.GetRealmFromTargetUrl(spContext.SPHostUrl); 
var responseToken = TokenHelper.GetAppOnlyAccessToken(TokenHelper.SharePointPrincipal, targetWeb.Authority, targetRealm); 
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(spContext.SPHostUrl + "_api/Web/SiteUserInfoList/Items("+ spUser.Id + ")"); // spUser.Id from spContext 
request.Method = "GET"; 
request.Accept = "application/json;odata=verbose"; 
request.ContentType = "application/json"; 
request.Headers.Add("Authorization", "Bearer " + spContext.UserAccessTokenForSPHost); 

WebResponse response = (HttpWebResponse)request.GetResponse(); 
Stream dataStream = response.GetResponseStream(); 
if (dataStream == null) 
{ 
    ViewBag.res = "nothing"; 
}else 
{ 
    StreamReader reader = new StreamReader(dataStream); 
    var result = reader.ReadToEnd(); 
    var resData = Json(result); 
    ViewBag.res= resData.Data; // res must be parse when using js 
} 
return View(); 

...それがベストプラクティスだが、それは仕事をしたかどうかわかりません。

関連する問題