Java 如何使用Scribe发布json或对象的内容?

Java 如何使用Scribe发布json或对象的内容?,java,oauth,scribe,Java,Oauth,Scribe,我正在使用Jackson将一个模型序列化为json,我想使用Scribe(一个OAuth java库)对该模型向url发出POST请求 目前,我正在使用一个util方法创建服务,为该服务创建请求,然后签署请求,然后发送它。在发送请求之前,我需要以某种方式将我的对象与请求一起附加 final OAuth20Service service = util.getService(); final OAuthRequest request = new OAuthRequest(Verb.POST, url

我正在使用Jackson将一个模型序列化为json,我想使用Scribe(一个OAuth java库)对该模型向url发出POST请求

目前,我正在使用一个util方法创建服务,为该服务创建请求,然后签署请求,然后发送它。在发送请求之前,我需要以某种方式将我的对象与请求一起附加

final OAuth20Service service = util.getService();
final OAuthRequest request = new OAuthRequest(Verb.POST, url, service);
// request.addPayload(MAPPER.writeValueAsString(requestModel));
// request.addParameter(???);
service.signRequest(new OAuth2AccessToken(accessToken), request);
final Response postResponse = request.send();

问题是将字符串化的json作为有效负载发送不起作用,设置参数的唯一方法是传入两个字符串,但我的对象中有嵌套的数组和对象。由于
postResponse.getBody()
返回一个字符串(我假设是json),它必须支持以另一种方式发送json,对吗?如何随请求发送复杂参数(例如对象模型、json等)?

您必须添加
应用程序/json;字符集=UTF-8
内容类型

final OAuth20Service service = util.getService();
final OAuthRequest request = new OAuthRequest(Verb.POST, url, service);
request.addHeader("Content-Type", "application/json;charset=UTF-8");
request.addPayload(MAPPER.writeValueAsString(requestModel));
// or this if you have a json string
// request.addPayload(json);
service.signRequest(new OAuth2AccessToken(accessToken), request);
final Response postResponse = request.send();

有没有一种方法可以在没有消费者令牌的情况下执行请求?比如当你第一次请求获取访问权限和机密时tokens@Bradley我们需要从哪个包导入Mapper?