public YahooApiService() { var nameValueCollection = new NameValueCollection(); nameValueCollection.Add("oauth_session_handle", "AEq.oFgczmkY.JCTRgw.QyWgp9lGHMTyB_j9JQJA3gV__pWdZyI-"); nameValueCollection.Add("oauth_expires_in", "3600"); nameValueCollection.Add("oauth_authorization_expires_in", "659667716"); nameValueCollection.Add("xoauth_yahoo_guid", "JUGBTYOWS5TV3CMVFBHUWYZR5U"); Token = new AccessToken(); Token.Token = "A=026in7zpoCwBeNeFa_aL62_T2VuP6cHOUMk9xvSpau2mJvDA.csfLrRiiakmVqWHzZ_NdBqWG4rz7_2yd1CDLXvTOu9CXkpbfSpYEL4F3sDLCWsDlCIPpVl8WGmug27WkI7mczgWN68UJPJs52ToiA.Njgah8Is9GBzKncVec7G557KDh07tilu8S9Yq9TO_EnSfwtqIpw6scNozpfmIVHZ3HQnV5NdWB9Qj3SjCIEuNUut6wqYqsAvK4Ay8S7SqfEMdi4CXW0Q.xk0YmBdwIqAmvryaQoX8YAJP4MiHdzGVKfqMxb_fUqeJFY7BjglZdMh2dVyvPPpT9dhYEWBVL1TGB6LMPmd.kczuV8e8ykHgCDeclZC86KdveK8PDfDjiILNIMyZjCwv25kM5HcPdsfP9xGof8X2kX6MjfIMpBAhotSe2_tXOm8rdemEDLi.SQvD2j7cC4t..xkn9tt4PWGBXIinzcBJQDxSu9rBfpUy3lizX6qIwLzhkkGxe7VNnaFOfxwy6Ct.JtGoss..ytAz87weWqQ9Y0O4mvd6jI0TytqSPSYULlxP7gMGrzJGf0Qlimia2azMfrUtorLloJstQnDB0Tj6QS8YiaFo1Up4f1Wom5_RLrvKr9k97_nGxXy8VMLwhwrvfGGbenVYxT8eJwWWnJRQ6fDhpPOyQsYkJ2NAyga7zrux5GArip1kGKZxs4UIn7HaXhzRY44q0k7ygIxIr3a.bpomZc7YVEbvu6PdpuH92IHkLu5mvEnLtTZddCDUl_GdEtHTPWYWWVoYqbcjO33q4kp9pMWE6Q--"; Token.TokenSecret = "17fc1153a844f36815e5fe4e99234cb12950d2fd"; Token.AddtionalProperties = nameValueCollection; Client = new SportsProvider("", CONSUMER_KEY, CONSUMER_SECRET, Token); }
private static void SetupClient() { GetToken(false); Client = new SportsProvider("", ClientId, ClientSecret, Token); Thread.Sleep(1000); try { FantasyContent content = Client.ExecuteRequest <FantasyContent>("http://fantasysports.yahooapis.com/fantasy/v2/game/nba"); } catch (Exception exception) { if (exception.HResult == -2146233088) { GetToken(true); Client = new SportsProvider("", ClientId, ClientSecret, Token); Thread.Sleep(1000); return; } throw; } }
static void Main(string[] args) { if (Storage.FileExists(TOKEN_FILE)) { try { BinaryFormatter formatter = new BinaryFormatter(); using (Stream stream = Storage.OpenFile(TOKEN_FILE, FileMode.Open)) { Token = formatter.Deserialize(stream) as AccessToken; } } catch { Console.WriteLine("ERROR: Error deserializing the token!"); } } if (Token != null) { Client = new SportsProvider("", CONSUMER_KEY, CONSUMER_SECRET, Token); Player player = QuickPlayerTest(); Console.WriteLine("Player name: " + player.Name); var league = QuickLeagueTest(); Console.WriteLine("League name: " + league.Name); var team = QuickTeamTest(); Console.WriteLine("Team name: " + team.Name); } else { string consumerKey = CONSUMER_KEY; string consumerSecret = CONSUMER_SECRET; string appUrl = string.Empty; string authCallback = "oob"; //YahooProvider target = new YahooProvider(consumerKey, consumerSecret, appUrl, authCallback); //Func<string, string> userAuthCallback = url => //{ // //const string loginUrl = "https://api.login.yahoo.com/oauth/v2/get_request_token"; // wb.Invoke(new Action(() => { wb.Navigate(url); })); //https://login.yahoo.com/config/login? // if (wb.Url.ToString().StartsWith("https://login.yahoo.com/config/login")) { //https://api.login.yahoo.com/oauth/v2/request_auth? // HtmlElement form = wb.Document.Forms["login_form"]; // //wb.Document.All.GetElementsByName(".save")[0].RaiseEvent("Click"); // HtmlElement userElement = form.All["username"]; // HtmlElement passElement = form.All["passwd"]; // form.InvokeMember("submit"); // if (wb.Url.ToString().StartsWith("https://api.login.yahoo.com/oauth/v2/request_auth?")) { // form = wb.Document.Forms.GetElementsByName("rcForm")[0]; // form.InvokeMember("submit"); // } else // throw new InvalidOperationException("uh oh... expected to get to the next url"); // } // return wb.Url.Query; //}; // TODO: Initialize to an appropriate value //Token = target.Authenticate(userAuthCallback); Func <string, string> userAuthCallback = url => { using (Process p = new Process()) { p.StartInfo = new ProcessStartInfo("iexplore.exe", url); p.Start(); return(Microsoft.VisualBasic.Interaction.InputBox("Enter key from (" + url + "):")); } }; SportsProvider client = new SportsProvider(appUrl, CONSUMER_KEY, CONSUMER_SECRET); client.AuthenticateAsync(userAuthCallback, completeOperation => { completeOperation(); // this must be called. Token = client.Token; Console.WriteLine("\nAsynchronous Authentication Operation completed successfully!\n"); }); Console.WriteLine("Waiting up to 60 seconds..."); int count = 0; while (!client.IsAuthenticated && count < 60) { Console.Write(". "); Thread.Sleep(1000); count++; } if (!client.IsAuthenticated) { return; // exit. } using (Stream stream = Storage.OpenFile(TOKEN_FILE, FileMode.Create)) { //DataContractSerializer serializer = new DataContractSerializer(typeof(AccessToken)); BinaryFormatter formatter = new BinaryFormatter(); formatter.Serialize(stream, Token); //serializer.WriteObject(stream, Token); } } Console.WriteLine(String.Format("Token: {0}\nSecret: {1}\n", Token.Token, Token.TokenSecret)); Console.WriteLine("Press any key to continue..."); Console.Read(); }