只需尝试通过URL将令牌发回给我。 AngularUI的新手,所以不明白为什么。
这是路线:
angular.module('myApp')
.config(function($stateProvider) {
$stateProvider
.state('oauth_callback', {
url: '/oauth_callback?access_token&expires_in',
templateUrl: 'app/oauth_callback/oauth_callback.html',
controller: 'OauthCallbackCtrl'
});
});

以下是我为控制器所做的一切:
ngular.module('myApp')
.controller('OauthCallbackCtrl', function ($scope, $stateParams) {
console.log('## params:', $stateParams);
});

控制台日志返回:
## params: Object {access_token: undefined, expires_in: undefined}
任何帮助将不胜感激。感谢。
答案 0 :(得分:1)
当我开发一个使用oAuth
和ui-router
的应用时,我遇到了类似的问题。
我的问题有点不同,因为我做了一些内部重定向来设置i18n路由。当oAuth
将我重定向回我的应用时,它会变得很疯狂,因为它应用的哈希值和我开发的ui-router
结构。
我最终在oAuth
上设置了指向中性HTML页面的重定向网址,该页面解析了哈希值,将其存储在localStorage
上,然后关闭了窗口。
当用户调用身份验证时,我会使用oAuth服务器触发新的窗口/选项卡打开。在我的角度应用程序中,我激活一个$interval
,查找我定义的localStorage
键的存在性和有效性。虽然它没有填充HTML,但它一直在寻找它。当它得到它,我继续在应用程序上的东西。