Resolves Issue 18 - Handles node.js querystring a little better
in the edge case on composite parameters such as foo[bar] :)
This commit is contained in:
17
lib/oauth.js
17
lib/oauth.js
@ -217,10 +217,19 @@ exports.OAuth.prototype._prepareParameters= function( oauth_token, oauth_token_s
|
||||
var parsedUrl= URL.parse( url, false );
|
||||
|
||||
if( parsedUrl.query ) {
|
||||
var extraParameters= querystring.parse(parsedUrl.query);
|
||||
for(var key in extraParameters ) {
|
||||
oauthParameters[key]= extraParameters[key];
|
||||
}
|
||||
var key2;
|
||||
var extraParameters= querystring.parse(parsedUrl.query);
|
||||
for(var key in extraParameters ) {
|
||||
var value= extraParameters[key];
|
||||
if( typeof value == "object" ){
|
||||
// TODO: This probably should be recursive
|
||||
for(key2 in value){
|
||||
oauthParameters[key + "[" + key2 + "]"] = value[key2];
|
||||
}
|
||||
} else {
|
||||
oauthParameters[key]= value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var sig= this._getSignature( method, url, this._normaliseRequestParams(oauthParameters), oauth_token_secret);
|
||||
|
Reference in New Issue
Block a user