使用以下代码时,我得到了
400 Bad request rest_missing_callback_params
$scope.signUp = function () {
var data = {
email: $scope.email,
password: $scope.password,
first_name: $scope.fName,
last_name: $scope.lName,
username: $scope.uName,
billing: {
first_name: $scope.fName,
last_name: $scope.lName,
company: $scope.cName,
address_1: $scope.address1,
address_2: $scope.address2,
city: $scope.city,
state: $scope.state,
postcode: $scope.pcode,
country: $scope.country,
email: $scope.email,
phone: $scope.mobile,
},
shipping: {
first_name: $scope.fName1,
last_name: $scope.lName1,
company: $scope.cName1,
address_1: $scope.address11,
address_2: $scope.address12,
city: $scope.city1,
state: $scope.state1,
postcode: $scope.pcode1,
country: $scope.country1,
}
}
console.log(data)
$http.post("https://www.colourssoftware.com/wordpress/wp-json/wc/v1/customers", {
headers: {
'Content-Type': 'application/json',
'Authorization': 'Basic ' + window.btoa("username:password")
},
data: data
})
.then(function (response) {
console.log(response)
}, function (response) {
console.log(response);
});
}

但是当我使用以下代码时,它会将数据发布到服务器。
var au = window.btoa("username:password"),
req = {
method: 'POST',
url: 'https://www.colourssoftware.com/wordpress/wp-json/wc/v1/customers',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Basic ' + au
},
data: data
}
$http(req).then(function (response) {
console.log(response)
}, function (response) {
console.log(response);
});

这两者有什么区别?为什么会这样?
答案 0 :(得分:1)
要获得最佳示例,您需要更改此内容:
$http.post("https://www.colourssoftware.com/wordpress/wp-json/wc/v1/customers", {
headers: {
'Content-Type': 'application/json',
'Authorization': 'Basic ' + window.btoa("username:password")
},
data: data
})
对此:
$http.post("https://www.colourssoftware.com/wordpress/wp-json/wc/v1/customers", data, {
headers: {
'Content-Type': 'application/json',
'Authorization': 'Basic ' + window.btoa("username:password")
}
})
根据Angular $http
文档(https://docs.angularjs.org/api/ng/service/ $ http#post)$http.post()
有一个不同的方法签名(post(url, data, [config]);
)而不是$http()
({{ 1}})。