我一直在尝试学习@POST来使用Jersey创建webservices。 我现在可以使用普通参数完全适应@Get和@Post。 例如,
NullReferenceException
但是,我不确定我是如何接受JSON消息并通过网址创建或处理它。
任何例子都会受到赞赏。
答案 0 :(得分:1)
创建一个数据传输对象,该对象将用于从UI使用JSON发送并直接使用它。 @Consume可用于配置从UI发送的数据类型格式它可以是JSON或表单提交等
@POST
@Path("/{param}")
@Consumes({MediaType.APPLICATION_JSON})
@Produces({MediaType.APPLICATION_JSON})
public Response postMsg(UserData userData) {
...
}
public class UserData {
private String userName;
private String userAddress;
...
define getter setter
}
// UI JSON call
var url = "rest/employee";
var type = "POST";
var data = {
userName : $("#txtEmpFirstName").val(),
userAddress : $("#txtEmpLastName").val(),
};
$.ajax({
type : type,
url : url,
data : JSON.stringify(data),
contentType: "application/json",
success : function(data) {
alert(data.Success);
resetEmployee();
searchEmployee();
}, error : function(error){ alert(JSON.stringify(error.responseText));}
});
答案 1 :(得分:0)
@Consumes
注释用于指定资源可以接受的表示形式的MIME媒体类型。
为了更好地理解,请遵循此link。