private static void DoConsumerRequest(Uri protectedResource, string consumerKey, string consumerSecret) { var request = OAuthConsumerRequest.Create( new EndPoint(protectedResource), OAuthService.Create( new EndPoint(), NullUri, new EndPoint(), new OAuth.Net.Components.OAuthConsumer(consumerKey, consumerSecret))); OAuthResponse response = request.GetResource(); if (!response.HasProtectedResource) { Console.Write("OAuth request did not respond with a resource"); } else { using (System.IO.StreamReader reader = new System.IO.StreamReader(response.ProtectedResource.GetResponseStream())) { Console.Write(reader.ReadToEnd()); } } }
protected void Page_Load(object sender, EventArgs e) { OAuthRequest request = OAuthConsumerRequest.Create( new EndPoint(@"http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20search.news%20where%20query%3D%22obama%22&format=xml"), _Default.yahooService); OAuthResponse response = request.GetResource(); if (response.HasProtectedResource) { using (StreamReader reader = new StreamReader(response.ProtectedResource.GetResponseStream())) { YQLDisplay.DocumentContent = reader.ReadToEnd(); } } }
public void TestConsumerRequestSignature() { OAuthService service = OAuthService.Create( new EndPoint("http://example.com/request_token"), new Uri("http://example.com/authorize"), new EndPoint("http://example.com/access_token"), new MockConsumer() { Key = "dpf43f3p2l4k3l03", Secret = "kd94hf93k423kf44", Status = ConsumerStatus.Valid }); OAuthRequest consumerRequest = OAuthConsumerRequest.Create( new EndPoint("http://provider.example.net/profile", "GET"), service); OAuthParameters authParameters = new OAuthParameters() { ConsumerKey = service.Consumer.Key, Realm = service.Realm, SignatureMethod = service.SignatureMethod, Timestamp = "1191242096", Nonce = "kllo9940pd9333jh", Version = service.OAuthVersion }; Assert.AreEqual( SignatureBase.Create(consumerRequest.ResourceEndPoint.HttpMethod, consumerRequest.ResourceEndPoint.Uri, authParameters), "GET&http%3A%2F%2Fprovider.example.net%2Fprofile&oauth_consumer_key%3Ddpf43f3p2l4k3l03%26oauth_nonce%3Dkllo9940pd9333jh%26oauth_signature_method%3DHMAC-SHA1%26oauth_timestamp%3D1191242096%26oauth_version%3D1.0"); authParameters.Sign(consumerRequest.ResourceEndPoint.Uri, consumerRequest.ResourceEndPoint.HttpMethod, service.Consumer, consumerRequest.RequestToken, new OAuth.Net.Components.HmacSha1SigningProvider()); Assert.AreEqual(authParameters.Signature, "SGtGiOrgTGF5Dd4RUMguopweOSU="); }