在我的JAX-RS资源中,我使用authenticate
方法返回Response
对象。
public Response authenticate(@QueryParam("username") String username,
@QueryParam("password") String password) throws JSONException, org.json.JSONException {
JsonObjectBuilder jsonObjBuilder = Json.createObjectBuilder();
jsonObjBuilder.add( "auth_token", authToken );
JsonObject jsonObj = jsonObjBuilder.build();
System.out.println("jsonObject" + jsonObj);
return Response.status(200).entity(jsonObj).build();
}
jsonObject在我的print语句中是完美的,但我的实际响应是用
构建的Response.status(200).entity(jsonObj).build();
看起来像这样:
{"auth_token":{"valueType":"STRING"}}
我希望回复看起来像这样:
("auth_token":"b88c1d32-2056-4c57-926d-e8213e875b7d")
答案 0 :(得分:0)
使用简单的HashMap替换过于复杂的JsonObjectBuilder:
Map<String, String> jsonValues = new HashMap<>();
jsonValues.put("auth_token", authToken);
return Response.status(200).entity(jsonValues).build();
它应该生成:
{“ auth_token”:“ b88c1d32-2056-4c57-926d-e8213e875b7d”}