Click here to Skip to main content
15,888,233 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
var oauth_token ="";
var oauth_token_secret = "";

var oauth_consumer_key = "";
var oauth_consumer_secret = "";

//requestToken = OAuthUtility.GetRequestToken(oauth_consumer_key, oauth_consumer_secret, "http://127.0.0.1/");
//var oauth_token =requestToken.Token;
//var oauth_token_secret = requestToken.TokenSecret;

// oauth implementation details
var oauth_version = "1.0";
var oauth_signature_method = "HMAC-SHA1";

// unique request details
var oauth_nonce = Convert.ToBase64String(
new ASCIIEncoding().GetBytes(DateTime.Now.Ticks.ToString()));
var timeSpan = DateTime.UtcNow
- new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc);
var oauth_timestamp = Convert.ToInt64(timeSpan.TotalSeconds).ToString();

// message api details
var status = "Updating status via REST API if this works";
var resource_url = "https://api.twitter.com/1.1/statuses/user_timeline.json";
var screen_name ="username";
var count = "1";
// create oauth signature
var baseFormat = "count={7}&oauth_consumer_key={0}&oauth_nonce={1}&oauth_signature_method={2}" + "&oauth_timestamp={3}&oauth_token={4}&oauth_version={5}&screen_name={6}";
var baseString = string.Format(baseFormat, oauth_consumer_key, oauth_nonce, oauth_signature_method, oauth_timestamp, oauth_token, oauth_version, Uri.EscapeDataString(screen_name), Uri.EscapeDataString(count));

baseString = string.Concat("GET&", Uri.EscapeDataString(resource_url), "&", Uri.EscapeDataString(baseString));

var compositeKey = string.Concat(Uri.EscapeDataString(oauth_consumer_secret),
"&", Uri.EscapeDataString(oauth_token_secret));

string oauth_signature;
using (HMACSHA1 hasher = new HMACSHA1(ASCIIEncoding.ASCII.GetBytes(compositeKey)))
{
oauth_signature = Convert.ToBase64String(
hasher.ComputeHash(ASCIIEncoding.ASCII.GetBytes(baseString)));
}

// create the request header
var headerFormat = "OAuth oauth_nonce=\"{0}\", oauth_signature_method=\"{1}\", " +
"oauth_timestamp=\"{2}\", oauth_consumer_key=\"{3}\", " +
"oauth_token=\"{4}\", oauth_signature=\"{5}\", " +
"oauth_version=\"{6}\"";

var authHeader = string.Format(headerFormat,
Uri.EscapeDataString(oauth_nonce),
Uri.EscapeDataString(oauth_signature_method),
Uri.EscapeDataString(oauth_timestamp),
Uri.EscapeDataString(oauth_consumer_key),
Uri.EscapeDataString(oauth_token),
Uri.EscapeDataString(oauth_signature),
Uri.EscapeDataString(oauth_version)
);


// make the request

ServicePointManager.Expect100Continue = false;

var postBody = "screen_name=" + Uri.EscapeDataString(screen_name);//
var postbody2 = "count=" + Uri.EscapeDataString(count);
resource_url += "?" + postBody + "&" + postbody2;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(resource_url);
request.Headers.Add("Authorization", authHeader);
request.Method = "GET";
request.ContentType = "application/x-www-form-urlencoded";


WebResponse response = request.GetResponse();
string responseData = new StreamReader(response.GetResponseStream()).ReadToEnd();

var resource_url1 = "https://api.twitter.com/1.1/statuses/update.json";
resource_url1 += "?status=" + textbox.Text;

HttpWebRequest request1 = (HttpWebRequest)WebRequest.Create(resource_url1);
request1.Headers.Add("Authorization", authHeader);
request1.Method = "POST";
request1.ContentType = "application/x-www-form-urlencoded";

WebResponse response1 = request1.GetResponse();
string responseData1 = new StreamReader(response1.GetResponseStream()).ReadToEnd();


This code gives (401)Unautorized exception in

WebResponse response1 = request1.GetResponse();
Posted
Updated 23-Jul-13 20:43pm
v2

1 solution

Chech out these:
http://youtu.be/RRfSo4Per4I[^]

and

http://youtu.be/TGEA1sgMMqU[^]

Hope it helps :D
 
Share this answer
 
Comments
sandeepams 24-Jul-13 5:00am    
yes i have implemented the same code shown in the 1st video url but its saying error : "remote server returned an error:(401) Unauthorized."
sandeepams 24-Jul-13 8:19am    
Hey solved using 2nd link.
Thank you..
sandeepams 25-Jul-13 4:02am    
But i need it in C#.net not in asp.net

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900