chrome浏览器中的发送数据如上图,注意最后那个冒号,冒号前面是key,后面value是空的。
我的发送代码如下:
$scope.loginJump = function(info){
$http({
url:'http://192.168.1.54:8080/retailer/user/auth',
method:"POST",
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
},
data: {
userName: info.staffID,
userPass: info.password,
checkCode: info.security
},
success: function(data){
alert(data);
},
error: function(err){
alert(err);
}
});
};
데이터에 직접 넣으면 매개변수가 json 형식으로 본문에 직접 전송되고 헤더는 content-type이 application/x-www-form-urlencoded로 설정되므로 formdata로 간주됩니다. 실제로 모든 것이 키로 사용됩니다.
물론, json을 사용하여 직접 데이터를 게시하는 것은 문제가 없습니다. 양식 데이터를 게시해야 하는 경우에는 직접 철자를 입력하거나 jquery의 $.param 또는 다른 방법을 사용해야 합니다.