-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Hello,
I'm trying to do POST request to some API resource and I need to pass a few parameters as a request body, one of parameter has a value with space character.
The parameter name is "name" and its value is "Fiddler Root.cer". As you can see file name contains a space character.
Content has been created with help of class FormUrlEncodedContent, e.g.
Content = new FormUrlEncodedContent(....
The request example here:
POST https://api.website.com/v1_1/upload HTTP/1.1
Content-Type: application/x-www-form-urlencoded
name=Fiddler+Root.cer&folderId=QhF3PaxT&size=950
But as you can see I have an error, Invalid signature. I think that during the generation and signing of oauth header signature, HttpClientExtras lib has double encoding problem.
HTTP/1.1 401 Unauthorized
Set-Cookie: classicView=false; Domain=4shared.com; Expires=Sat, 27-Jan-2018 16:10:32 GMT; Path=/
Server: 292
Vary: *
Content-Type: application/json;charset=UTF-8
Content-Length: 469
Date: Sun, 07 Feb 2016 16:10:32 GMT
{"message":"Unauthorized.","code":"401.0300","cause":"Invalid signature. Signature base string : POST&https%3A%2F%2Fapi.website.com%2Fv1_1%2Fupload&folderId%3DIZse5M9o%26name%3DFiddler%2520Root.cer%26oauth_consumer_key%3D984c186378bb8f1c39e3928417ac0b63%26oauth_nonce%3Dzfgwi9456eoxj7f4%26oauth_signature_method%3DHMAC-SHA1%26oauth_timestamp%3D1454861431%26oauth_token%3Ded0137b644dd042aa534392cd0eb0dda%26oauth_version%3D1.0%26size%3D950 Signature method : HMAC-SHA1"}
Could you please take a look to any POST request with url encoded content where any parameter will contain the space character in its value?
Could you approve or decline my suggestion about the double encoding in your lib?
Thanks.