JAX-RS POST 方法 415 不支持的媒体类型
JAX-RS POST method 415 Unsupported Media Type
我知道有一些线程有同样的问题,但我没有正确理解 运行。我对此还是很陌生。
我有一个 JAX-RS 服务器 运行:
GET
方法有效。 POST
方法没有。
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public Response post(Movie movie){
System.out.println("In the POST method");
String result = movie.toString();
return Response.status(201).entity(result).build();
在我的 Oracle JET 客户端中,我想创建一个 post:
addMovie = function(){
console.log("post sent");
$.ajax({
type: "POST",
url: "http://localhost:8080/MovieRestService/resources/movies",
headers: {
"Content-Type": "application/json"
},
data:
{
id: 2,
name: "test",
director: "test",
year: 234
},
success: "success",
dataType: 'application/json'
});
它一直给我一个 415 Unsupported Media Type
错误。
对我来说有点奇怪的是,在响应 header 中,内容类型是 text/html Content-Type: text/htlm
有人有解决方案吗?
编辑:
在网络上进行大量搜索后,我终于找到了真正的问题所在...似乎 Glassfish 4.1.1 中有一个错误,是在制作 post 到我的服务器...
这应该有效
var url = 'http://localhost:8080/MovieRestService/resources/movies';
var sucessCallback = function(response) {...}
var data = JSON.stringify({
id: 2,
name: "test",
director: "test",
year: 234
});
$.ajax({
url: url,
method: POST,
contentType: 'application/json; charset=utf-8',
dataType: 'json',
data: data,
cache: false,
context: this,
}).success(sucessCallback);
我知道有一些线程有同样的问题,但我没有正确理解 运行。我对此还是很陌生。
我有一个 JAX-RS 服务器 运行:
GET
方法有效。 POST
方法没有。
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public Response post(Movie movie){
System.out.println("In the POST method");
String result = movie.toString();
return Response.status(201).entity(result).build();
在我的 Oracle JET 客户端中,我想创建一个 post:
addMovie = function(){
console.log("post sent");
$.ajax({
type: "POST",
url: "http://localhost:8080/MovieRestService/resources/movies",
headers: {
"Content-Type": "application/json"
},
data:
{
id: 2,
name: "test",
director: "test",
year: 234
},
success: "success",
dataType: 'application/json'
});
它一直给我一个 415 Unsupported Media Type
错误。
对我来说有点奇怪的是,在响应 header 中,内容类型是 text/html Content-Type: text/htlm
有人有解决方案吗?
编辑:
在网络上进行大量搜索后,我终于找到了真正的问题所在...似乎 Glassfish 4.1.1 中有一个错误,是在制作 post 到我的服务器...
这应该有效
var url = 'http://localhost:8080/MovieRestService/resources/movies';
var sucessCallback = function(response) {...}
var data = JSON.stringify({
id: 2,
name: "test",
director: "test",
year: 234
});
$.ajax({
url: url,
method: POST,
contentType: 'application/json; charset=utf-8',
dataType: 'json',
data: data,
cache: false,
context: this,
}).success(sucessCallback);