我正在开发angularjs中的foursquare身份验证。当foursquare将用户重定向到配置的REDIRECT_URI时,angularjs会自动删除查询参数并将其置于不同的URI中。
以下是首次将浏览器重定向到的链接。
http://localhost:9000/foursquare?code=XXXXXXXXXX#_=_
然后在一秒钟内,它将我重定向到
http://localhost:9000/foursquare
因此我最终失去了查询参数。
在引用angularjs URL routing documentation后,我在routes.js中有以下代码段
.state('foursquare',{
url:'/foursquare?code',
templateUrl:'views/foursquare.html',
controller:'mediaCtrl'
})
即便如此,同样的问题仍然存在。 我很震惊。任何帮助将不胜感激。
我附上了完整的routes.js文件
'use strict';
angular.module('nextpageApp')
.config(function ($stateProvider) {
$stateProvider
.state('main', {
url: '/',
templateUrl: 'views/main.html',
controller: 'MainCtrl'
})
.state('foursquare',{
url:'/foursquare?code',
templateUrl:'views/foursquare.html',
controller:'mediaCtrl'
})
.state('why-citibytes', {
url: '/why-citibytes',
templateUrl: 'views/why-citibytes.html'
})
.state('small-businesses', {
url: '/small-businesses',
templateUrl: 'views/small-businesses.html'
})
.state('resellers', {
url: '/resellers',
templateUrl: 'views/resellers.html'
})
.state('groups', {
url: '/groups-franchises',
templateUrl: 'views/groups-franchises.html'
})
.state('publishers', {
url: '/publishers',
templateUrl: 'views/publishers.html'
})
.state('pricing', {
url: '/pricing',
templateUrl: 'views/pricing.html'
})
.state('about', {
url: '/about',
templateUrl: 'views/about.html'
})
.state('faq', {
url: '/faq',
templateUrl: 'views/faq.html'
})
.state('contact', {
url: '/contact',
templateUrl: 'views/contact-us.html'
})
.state('places', {
url: '/places/:businessId',
templateUrl: 'views/profile.html',
controller: 'ProfileCtrl'
})
.state('dashboard', {
url: '/dashboard/:businessId',
templateUrl: 'views/dashboard.html',
controller:'DashboardCtrl',
data: { title: 'My Page' },
authenticate: true
})
.state('my-publishers', {
url: '/publishers/:businessId',
templateUrl: 'views/dashboard.html',
controller:'DashboardCtrl',
data: { title: 'Pusblishers' },
authenticate: true
})
.state('scan', {
url: '/scan',
templateUrl: 'views/scan.html',
controller:'ScanCtrl'
})
// .state('test',{
// url:'/test',
// templateUrl:'views/test.html',
// controller:'mainCtrl'
// })
.state('build', {
url: '/build',
templateUrl: 'views/build.html',
controller:'DashboardCtrl',
authenticate: true
});
});
以下是我在foursquare应用中配置的重定向URI
http://localhost:9000/foursquare