I used C# and WCF, but I could have just as easily used an ASMX web service. This code is fairly simple. No I didn't write it initially.
I found it online (Hey, we all have to start somewhere). I massaged it
a little to fit my needs and boom, here it is. I have decided to leave
the comments for the original code sample in the post. Note: This code
will not run as listed. You have to have a password. This code has
that as a shared variable, but I'm not showing that to you, seriously.
I hope that this is of some help to you.
public void SubmitUserStatus(string username, string tweet)
// encode the username/password
string user = Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(username + ":" + password));
// determine what we want to upload as a status
byte bytes = System.Text.Encoding.ASCII.GetBytes("status=" + tweet);
// connect with the update page
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://twitter.com/statuses/update.xml");
// set the method to POST
request.Method = "POST";
// thanks to argodev for this recent change!
request.ServicePoint.Expect100Continue = false;
// set the authorisation levels
request.Headers.Add("Authorization", "Basic " + user);
request.ContentType = "application/x-www-form-urlencoded";
// set the length of the content
request.ContentLength = bytes.Length;
// set up the stream
Stream reqStream = request.GetRequestStream();
// write to the stream
reqStream.Write(bytes, 0, bytes.Length);
// close the stream