Hi,

Thanks for answering my question.
I've tried a lot of things to reach oauth/request_token, and i've
tried :
request_maker.open("POST", "https://api.twitter.com/oauth/
request_token")
but nothing has changed !

here is my new code :

function signForm() {
    accessor = { consumerSecret: consumer_secret
        , tokenSecret   : oauth_token_secret};
    message = { action: "https://api.twitter.com/oauth/request_token";
        , method: "POST"
        , parameters: []
    };
    message.parameters.push(["oauth_consumer_key=", consumer_key]);
    message.parameters.push(["oauth_callback=", oauth_callback]);
    message.parameters.push(["oauth_signature_method=",
signature_method]);
    OAuth.setTimestampAndNonce(message);
    message.parameters.push(["oauth_version=", oauth_version]);
    OAuth.SignatureMethod.sign(message, accessor);
    return true;
}

function getSignature() {
    signForm();
    console.log(OAuth.SignatureMethod.getBaseString(message));
    console.log(OAuth.getParameter(message.parameters,
"oauth_signature"));
    request_maker = new XMLHttpRequest();
    request_maker.open("POST", "https://api.twitter.com/oauth/
request_token");
    request_maker.setRequestHeader("Host", "api.twitter.com");
    request_maker.setRequestHeader("Content-type", "application/x-www-
form-urlencoded");
    request_maker.setRequestHeader("Authorization", "OAuth
"+"oauth_signature_method="+signature_method
+"&oauth_timestamp="+OAuth.getParameter(message.parameters,
"oauth_timestamp")
+"&oauth_nonce="+OAuth.getParameter(message.parameters, "oauth_nonce")
+"&oauth_signature="+OAuth.getParameter(message.parameters,
"oauth_signature"));
    request_maker.onreadystatechange = oth_func;
    request_maker.send("oauth_signature_method="+signature_method
+"&oauth_timestamp="+OAuth.getParameter(message.parameters,
"oauth_timestamp")
+"&oauth_nonce="+OAuth.getParameter(message.parameters, "oauth_nonce")
+"&oauth_signature="+escape(OAuth.getParameter(message.parameters,
"oauth_signature")));
}

At first i thought it was my signature but i've checked again and it
appears to be ok. maybe it's about base64 thing.
I've also seen that when i checked request_token with that tool :
http://oauth.googlecode.com/svn/code/javascript/example/requestToken.html
Request_token succees on https but fails on http.



On 18 avr, 21:14, Matt Harris <[email protected]> wrote:
> Hi,
>
> Looking at your code this line:
>    request_maker.open("POST", "https://api.twitter.com/oauth";);
>
> makes it look like you are making a request to:
>    https://api.twitter.com/oauth
>
> Double check you are sending the user to the correct endpoint. At this point
> of your flow I think you mean to make a request 
> tohttps://api.twitter.com/oauth/request_token.
>
> Best
> @themattharris
> Developer Advocate, Twitterhttp://twitter.com/themattharris
>
>
>
>
>
>
>
> On Fri, Apr 15, 2011 at 4:51 AM, galeyte <[email protected]> wrote:
> > I don't have a 401 anymore but i recieve a "you are being redirected"
> > page, so i can't get my request_token
> > here is my code :
>
> > function getSignature() {
> >    var accessor = { consumerSecret: consumer_secret,
> >        tokenSecret: oauth_token_secret
> >    };
> >    var message = { method: "POST",
> >         action: "/request_token",
> >         parameters: []
> >    };
> >    message.parameters.push(["oauth_callback",
> > OAuth.formEncode(oauth_callback)]);
> >    message.parameters.push(["oauth_consumer_key",
> > OAuth.formEncode(consumer_key)]);
> >    message.parameters.push(["oauth_nonce", OAuth.nonce(32)]);
> >     message.parameters.push(["oauth_signature_method",
> > signature_method]);
> >    message.parameters.push(["oauth_timestamp", OAuth.timestamp()]);
> >    OAuth.completeRequest(message, accessor);
> >    OAuth.SignatureMethod.sign(message, accessor);
> >    console.log(OAuth.getParameter(message.parameters,
> > "oauth_signature"));
> >     var data = "Oauth oauth_consumer_key="+consumer_key
> > +"&oauth_signature_method="+signature_method
> > +"&oauth_callback="+OAuth.getParameter(message.parameters,
> > "oauth_callback")
> >        +"&oauth_timestamp="+OAuth.getParameter(message.parameters,
> > "oauth_timestamp")
> > +"&oauth_nonce="+OAuth.getParameter(message.parameters, "oauth_nonce")
> > +"&oauth_signature="+OAuth.getParameter(message.parameters,
> > "oauth_signature");
> >    console.log(data);
> >    request_maker = new XMLHttpRequest();
> >     request_maker.open("POST", "https://api.twitter.com/oauth";);
> >     request_maker.setRequestHeader("Authorization", data);
> >    request_maker.onreadystatechange = oth_func;
> >     request_maker.send("Authorization OAuth" + data);
> > }
>
> > I don't now if it's me being dumb or anything else, but i really can't
> > find my mistake.
>
> > --
> > 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