20140510 twitter authentication by webauthentictionbroker in windows phone 8.1 with asyncoauth

20

Upload: -

Post on 22-Jun-2015

653 views

Category:

Technology


1 download

DESCRIPTION

2014年5月10日 Windows Phone Arch in Tokyo #3 でのLT内容

TRANSCRIPT

Page 1: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth
Page 2: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth

仕事

個人活動

http://bit.ly/metrotokyo4

http://tech.tanaka733.net

Page 3: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth
Page 4: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth
Page 5: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth
Page 6: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth
Page 7: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth
Page 8: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth
Page 9: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth

http://okazuki.hatenablog.com/entry/2014/04/21/003008

Page 10: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth

WebAuthenticationBroker.GetCurrentApplicationCallbackUri()

Page 11: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth
Page 12: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth
Page 13: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth

protected async override void OnActivated(IActivatedEventArgs e){

//前半略var continuationEventArgs = e as IContinuationActivatedEventArgs;if (continuationEventArgs != null){

var page = rootFrame.Content as TwitterPage;if (page != null){

page.ContinueWebAuthentication(e as WebAuthenticationBrokerContinuationEventArgs);

}}

Window.Current.Activate();}

Page 14: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth

//パラメーターを生成var options = new List<KeyValuePair<string, string>>(capacity: 1)

{new KeyValuePair<string,string>("oauth_callback", callbackUri)

};

var headerParams = OAuthUtility.BuildBasicParameters("vPJVb79KWRIaTFAZ3ri5KY0cF","p1XJIHjnkvIF7zscQDOL1La4KpKfPNRTuvwIzSHDwtkv5YwtYe","https://api.twitter.com/oauth/access_token",System.Net.Http.HttpMethod.Post,new RequestToken(token, ""),options);

var header = headerParams.Select(p => p.Key + "=" + p.Value.Wrap("¥"")).ToString(",");

Page 15: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth

//AccessTokenを取得var client = new HttpClient();var request = new HttpRequestMessage(

HttpMethod.Post, "https://api.twitter.com/oauth/access_token")

{Content = new FormUrlEncodedContent

(new List<KeyValuePair<string, string>>(capacity: 1){

new KeyValuePair<string,string>("oauth_verifier", verifier)})};

request.Headers.Authorization = new AuthenticationHeaderValue("OAuth", header);var response = await client.SendAsync(request);

Page 16: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth
Page 17: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth

using

Page 18: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth

One More Thing…

Page 19: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth

http://www.microsoft.com/ja-jp/events/developer/default.aspx

Page 20: 20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8.1 with AsyncOAuth