The OAuth do not need the permission from Twitter. But XAuth is required.
I'm not using MGTwitterEngine, with the official document of Twitter, I scratched a client with C, to calculated the nonce and signature, then use the tool cURL, then I can get the oauth_token and token_secret.
Additional message about cURL is that you must have created your App in Twitter, you can use the OAuth tool
in your App(not required to be the current App your're working on) setting. If the App in twitter is not your current App, you should generate the cURL command line first. Set the Request Settings to POST
and the Request URI to http://api.twitter.com/oauth/request_token
, leave other setting as default, then click the button on the page bottom, you then see the cURL command, it seems like that:
curl --request 'POST' 'http://api.twitter.com/oauth/request_token' --header 'Authorization: OAuth oauth_consumer_key="your_consumer_key", oauth_nonce="your_random_string", oauth_signature="your_signature", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1329273306", oauth_token="451145411-AxGXG8xNdW1Eymwx85hs3sc1OE3NYsXe578AUtPe", oauth_version="1.0"' --verbose
replace the oauth_consumer_key
, oauth_timestamp
and oauth_signature
with yours, delete the oauth_token
and its value, copy the command to your cmd
or shell
and execute it. Another important trick is that, you must explicitly mark the oauth_callback
in Authorization
, and set the value as oob
:
auth_callback="oob"
If your consumer_key
and oauth_signature
is correct, this steps will not lead to the Client application is not permitted to use xAuth
error.