ユーザーが Yammer 資格情報を使用して認証する必要がある Windows ストア アプリを開発しています。機能を実現するために、次のコードを作成しました。
var client_id = <<My Client ID >>;
var client_secret = <<My Client Secret>>;
string redirectURI = WebAuthenticationBroker.GetCurrentApplicationCallbackUri().ToString();
string loginURI = "https://www.yammer.com/dialog/oauth?client_id=" + client_id + "&redirect_uri=" + redirectURI;
var result = await WebAuthenticationBroker.AuthenticateAsync(WebAuthenticationOptions.None, new Uri(loginURI), new Uri(redirectURI));
if (result.ResponseStatus == WebAuthenticationStatus.Success)
{
var response = result.ResponseData;
string[] keyValPairs = response.Split('=');
HttpClient client = new HttpClient();
string url = "https://www.yammer.com/oauth2/access_token.json?client_id=" + client_id + "&client_secret=" + client_secret + "&code=" + keyValPairs[1];
HttpResponseMessage JSONresponse = await client.GetAsync(url);
string content = await JSONresponse.Content.ReadAsStringAsync();
}
アプリを初めて実行したとき、資格情報を求められ、ログインできました。
アプリを実行すると、以前に入力した資格情報が取得され、自動的にログインします。「サインインしたままにする」オプションをチェックしなかったことは確かです。
アプリを実行するたびに資格情報を要求するようにします。
助けてください、事前に感謝します。