我正在尝试使用Auth0实现服务器端社交登录,而我仍然坚持使用this guide的第3步。我从前面的步骤获得了值为/**
* @ngdoc function
* @name mealsApp.controller:AboutCtrl
* @description
* # AboutCtrl
* Controller of the mealsApp
*/
angular.module('mealsApp')
.controller('MenuCtrl', function ($scope, menu, $window) {
this.awesomeThings = [
'HTML5 Boilerplate',
'AngularJS',
'Karma'
];
// $scope.foods;
// reading data from localstorage
var orderedfood = JSON.parse($window.localStorage.getItem("orderedfoods"));
//console.log(orderedfood);
// Defining restaurant and ordered food
$scope.myRestaurant = menu.myRestaurant;
$scope.orderfood = function(key,Cafeteria){
// console.log(key);
// Defining foods in a restaurants
$scope.foods = Cafeteria.foods;
// console.log(Cafeteria.foods);
// Getting foods to local storage
$scope.storage = function (food){
orderedfood.push({
foodname : food.foodname,
price : food.price,
orderedfood : true,
deliveredfood : false
});
// Sending data to localstorage
$window.localStorage.setItem("orderedfoods", JSON.stringify(orderedfood));
};
/*$scope.order = function(){
//$window.alert("You selected" + foodname);
};*/
};
});
的回调,但是当我在服务器上将http://mywebsite/login?code=bLvc4EmsaezBp1sN&state=UXZ8DfOZeRNGy4AKD4DsaS0n#_=_
的值提交给Auth0端点code
时,我收到了响应{{1} }。
从我看到的例子中,我认为我的代码太短了。我在这里做错了什么?
/oauth/token
编辑:自从意识到我的方式和参数的错误已被移动到网址。
现在我收到错误{"error":"invalid_grant","error_description":"Invalid authorization code"}
答案 0 :(得分:1)
401通常表示client_id
/ client_secret
无效。请仔细检查这些值。
这也可能意味着redirect_uri
与您注册的任何内容都不匹配(尾随/
可能或可能无关紧要。)
redirect_uri必须与您的设置页面中定义的匹配。 http://localhost是有效地址,Auth0允许您同时输入多个地址。
附注:
state
参数state
参数对CSRF reasons具有加密安全性,并且您收到的授权码响应中的state
与您发送的state
相同授权代码请求答案 1 :(得分:0)
问题可能出在您的重定向URL。它必须与您的初始请求相同。
实际上,/ authorize和/ token调用中的所有值都必须相等