是否可以将 JQuery 中的 JSON 发布到在 Jersey JAVA 中获取 JSON 的服务器,我正在努力解决这个问题。我有一个 ajax 使用 Jersey REST GET 将 JSON 发布到服务器,但没有任何效果,我想知道它是否是正确的方法。这是我之前关于该问题的代码的问题:
java中的代码在服务器中实现:
@Path("/helloworld")
public class GetData {
@GET
@Consumes("application/json")
@Produces("application/json")
public String getResource(JSONObject obj) throws IOException {
InputStream in = (InputStream) obj.values();
String data = IOUtils.toString(in);
JSONObject out = (JSONObject) JSONSerializer.toJSON(data);
String result = out.getString("name");
return data;
}
}
Javascript代码:
<script>
$.ajax({
url: '/helloworld',
type: 'POST',
contentType: 'application/json',
data: { json: JSON.stringify({
name:"Bob"
})},
dataType: 'json'
});
alert("json posted!");
</script>
服务器控制台中的消息:
2012-apr-12 10:49:51 com.sun.jersey.spi.container.ContainerRequest getEntity ALLVARLIG:Java 类 net.sf.json.JSONObject 和 Java 类型类 net.sf.json.JSONObject 的消息体阅读器,并且未找到 MIME 媒体类型 application/octet-stream。与 MIME 媒体类型兼容的注册消息体阅读器为:application/octet-stream -> com.sun.jersey.core.impl.provider.entity.ByteArrayProvider