For best results, normalize your space separation characters to "%20"
instead of "+". Your POST body should contain something like
"tweet%20from%20the%20api" and your OAuth signature basestring would encode
this portion as "tweet%2520from%2520the%2520api".

Some libraries get a little confused with the plus character.

Taylor

On Fri, Jan 7, 2011 at 9:33 AM, Andy <abowl...@gmail.com> wrote:

> I am using OAuth to authenticate and then sending in a status update -
> which works beautifully if there are no spaces in the status string.
> As soon as I add one in, I run into a 401 - invalid signature error.
> Any advice?
>
> Posting to: http://api.twitter.com/1/statuses/update.json
>
> Here are the Headers (everything's stripped from the authorization):
> ==============Authorization==============
> OAuth oauth_signature="[my oauth sig]", oauth_token="[my oauth
> token]", oauth_consumer_key="[consumer key]", oauth_nonce="[nonce]",
> oauth_signature_method="HMAC-SHA1", oauth_timestamp="1294421252",
> oauth_version="1.0"
> ==============Content-Length==============
> 25
> ==============Content-Type==============
> application/x-www-form-urlencoded; charset=UTF-8
> ==============User-Agent==============
> oAuthRequestAgent
>
>
> Then the page is:
> ==============method==============
> post
> ==============protocol==============
> HTTP/1.1
> ==============content==============
> status=tweet+from+the+api
>
> --
> Twitter developer documentation and resources: http://dev.twitter.com/doc
> API updates via Twitter: http://twitter.com/twitterapi
> Issues/Enhancements Tracker:
> http://code.google.com/p/twitter-api/issues/list
> Change your membership to this group:
> http://groups.google.com/group/twitter-development-talk
>

-- 
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk

Reply via email to