我正在开发一款Android应用,我已经集成了Scribe库,可以与Magento建立与OAuth1.0的http连接。我的问题是我需要将带有参数的请求发送到正文但没有密钥。现在我正确登录并且我的令牌被授权,我从服务器,类别获得产品,等等......但是我无法结账,因为我总是得到代码“401授权要求”。我认为问题可能在于身体中的参数。
我的代码:
...
@Override
protected String doInBackground(String... json) {
String result = null;
org.scribe.model.Response response = null;
String url = Global.BASE_URL + "cart/1";
if(Global.TOKEN_AUTHORIZED != null) {
OAuthRequest request = new OAuthRequest(Verb.POST, url);
//I only need insert a json into body without key
request.addBodyParameter(<I don't need a key>, json[0]);
Global.OAUTH_SERVICE.signRequest(Global.TOKEN_AUTHORIZED, request);
response = request.send();
}
if(response != null && response.getCode() == 200) {
result = response.getBody();
} else {
result = "ERROR";
}
return result;
}
...
我如何只在身体中放置一个参数但没有键,值?
提前致谢:)
答案 0 :(得分:2)
我找到了解决方案:
现在我收到代码为200的回复:)
if(Global.TOKEN_AUTHORIZED != null) {
OAuthRequest request = new OAuthRequest(Verb.POST, url);
request.addHeader("Content-Type", "application/json");
request.addPayload(params[0]);
Global.OAUTH_SERVICE.signRequest(Global.TOKEN_AUTHORIZED, request);
response = request.send();
}
我希望能帮助某人:)