I’m not sure what you mean by signature base string.
When sending the post request, I used the java code below to sign the post request - this works for request I send without + :
PostMethod postMethod = new PostMethod(urlString);
if ( parameters != null) {
for (String key : parameters.keySet()) {
postMethod.addParameter(key, parameters.get(key));
}
}
OAuthConsumer consumer = new HttpClient2OAuthConsumer(consumerKey,
consumerSecretKey,SignatureMethod.HMAC_SHA1);
consumer.setTokenWithSecret(token, tokenSecret);
consumer.sign(postMethod);
Regarding your second suggestion, I tried setting the status and other parameters in the post body instead of the url and got the same result.