Main
Latest
- wget has rounding mistake or something?
- Twitter Replies
- Blog Reopened
- Blog closed (temporarily)
- "I won't forget" by Jacques FT. Pebbles
- Jaiku Revisited
- Warcode
- myXchange July 2008
- The Netherlands at war with Zimbabwe?
- Plazes
Archives
- June 2004
- July 2004
- August 2004
- September 2004
- October 2004
- November 2004
- December 2004
- January 2005
- February 2005
- March 2005
- April 2005
- May 2005
- June 2005
- July 2005
- August 2005
- September 2005
- October 2005
- November 2005
- December 2005
- January 2006
- February 2006
- March 2006
- April 2006
- May 2006
- June 2006
- July 2006
- August 2006
- September 2006
- November 2006
- December 2006
- January 2007
- February 2007
- March 2007
- April 2007
- May 2007
- June 2007
- July 2007
- August 2007
- September 2007
- October 2007
- November 2007
- December 2007
- January 2008
- February 2008
- March 2008
- April 2008
- May 2008
- June 2008
- July 2008
- August 2008
- September 2008
- October 2008
- November 2008
- December 2008
- January 2009
Twitter on Google App Engine
I tried to post a message to Twitter from Google App Engine and just gave up. Normally I am a die-hard hacker that does not give up easily, but sometimes a man needs to know when he is truly pwned.
Here is the code, which works fine with dev_appserver.py:
url = 'http://twitter.com/statuses/update.xml'
payload = urllib.urlencode({'status': 'my update message'})
basicauth = base64.encodestring('%s:%s' % ('myusername', 'mypassword'))[:-1]
headers = {'Authorization': 'Basic %s' % basicauth}
urlfetch.fetch(url=url, payload=payload, method=urlfetch.POST, headers=headers)
However, after being uploaded, Twitter keeps returning the following error:
403 Forbidden: The server understood the request, but is refusing to fulfill it. If you are posting from an API tool please ensure that the HTTP_REFERER header is not set.
Yes, Google forces the HTTP_REFERER and Twitter will have none of it. And yes, this has been raised on Twitter Development Talk list by myself and others. We are waiting for some (re)action.
Copyright © 2004-2009 Charl van Niekerk. All articles are released under the Creative Commons Attribution 2.5 South Africa licence, unless where otherwise stated.


1 Comments
Comment by
Barry V. on Monday, November 24, 2008 12:37:00 AM
Just seeing if you ever resolved this. I used your code example to try it on GAE (http://tapingya.com) with success. Things have changed since this post I'm sure, but wanted to give you a heads up in case you still cared. :)
Post a Comment