AngularJS POST 400 错误请求
AngularJS POST 400 bad request
我正在尝试从 Angular 控制器执行 POST,当我的 Java RestController 不需要参数(即下面 save
的签名时,它会工作只是 save()
),但是一旦我告诉它期望一个参数并尝试在 Angular 中的 POST 请求中发送它,它就会失败并返回 400 Bad Request
。是否需要做些什么才能从 Angular POST 正确发送数据?
@RestController
@RequestMapping("/person")
public class PersonController {
@RequestMapping(method = RequestMethod.POST)
public Person save(@RequestParam Long personnelId) {
System.out.println("SUCCESSFULLY POSTED");
return null;
}
}
POST请求:
$http({
url: 'http://localhost:8080/person',
method: 'POST',
data: {personnelId: 4}
}).success(function() {
// do something on success
});
这将通过服务器端的 Spring 安全和休眠,如果相关的话。
您可能需要在 angular POST 中将您的内容类型设置为 application/json。
$http({
url: 'http://localhost:8080/person',
method: 'POST',
contentType: "application/json",
data: {personnelId: 4}
}).success(function() {
// do something on success
});
我猜是因为我还没有真正使用过 Spring。还要检查
aconkey
您是否尝试过映射您的参数名称?
@RequestParam(value="personnelId") Long personalId
您是否配置了任何 CORS?
我正在尝试从 Angular 控制器执行 POST,当我的 Java RestController 不需要参数(即下面 save
的签名时,它会工作只是 save()
),但是一旦我告诉它期望一个参数并尝试在 Angular 中的 POST 请求中发送它,它就会失败并返回 400 Bad Request
。是否需要做些什么才能从 Angular POST 正确发送数据?
@RestController
@RequestMapping("/person")
public class PersonController {
@RequestMapping(method = RequestMethod.POST)
public Person save(@RequestParam Long personnelId) {
System.out.println("SUCCESSFULLY POSTED");
return null;
}
}
POST请求:
$http({
url: 'http://localhost:8080/person',
method: 'POST',
data: {personnelId: 4}
}).success(function() {
// do something on success
});
这将通过服务器端的 Spring 安全和休眠,如果相关的话。
您可能需要在 angular POST 中将您的内容类型设置为 application/json。
$http({
url: 'http://localhost:8080/person',
method: 'POST',
contentType: "application/json",
data: {personnelId: 4}
}).success(function() {
// do something on success
});
我猜是因为我还没有真正使用过 Spring。还要检查
aconkey
您是否尝试过映射您的参数名称?
@RequestParam(value="personnelId") Long personalId
您是否配置了任何 CORS?