我正在AngularJS中为前端实现JWT身份验证,为后端实现PHP,我只是设置了头部授权:
.run(['$http', function($http) {
$http.defaults.headers.common['Authorization'] = 'Bearer '+localStorage.getItem('tokenAPI');
}])
由于我添加了这些行,因此我的POST请求中没有传递$ _POST变量
以下是我发送此变量的方式:
let body = new URLSearchParams();
body.set('username', $scope.username);
body.set('password', $scope.pwd);
body.set('project', $rootScope.project);
//Request options
var req = {
method: 'POST',
url: Global.url_api+'action=Connection',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
},
data: body.toString()
}
我的收据如下:
$project = $_POST['project'];
$username = $_POST['username'];
$password = $_POST['password'];
因为我添加了这个标题,我的请求方法变成了一个不再是POST的Option方法。