我遇到了使用Java和Jersey(v.2.22)客户端API创建POST的问题。我试图将会话令牌发送到服务器。有了GET就没问题了:
...
Invocation.Builder builder=webTarget.request();
builder.accept(MediaType.APPLICATION_OCTET_STREAM_TYPE);
builder.header("Token",token);
builder.buildGet();
try(InputStream inputStream=builder.get(InputStream.class);...
}...
但是当我为POST做同样的事情时:
Invocation.Builder builder=webTarget.request();
builder.accept(MediaType.APPLICATION_JSON_TYPE);
builder.header("Token",token);
Response test=builder.buildPost(Entity.json(node.toString())).invoke();
我成为未经授权的回应 - InboundJaxrsResponse {context = ClientResponse {method = POST,uri = http://localhost:8080.../,status = 401,reason = Unauthorized}}
我也用Ruby测试了POST服务。标题中的令牌没有问题。这与GET服务运行的方式相同。
有人知道我做错了还是错误?