2014-04-22 24 views
1

我是新开发SPA。我使用Passport来使用AngularJS和NodeJS。我已经成功实施了localStrategy。现在,我想:,LinkedInStrategy =需要( '护照LinkedIn-的oauth2')战略设置Passport - LinkedIn OAuth2.0策略;看不到授权页面加载

当我尝试登录请求,我收到以下错误: 的XMLHttpRequest无法加载

"http://localhost:8000/login/linkedin. The request was redirected to  'https://www.linkedin.com/uas/oauth2/authorization?state=SOME%20STATE&respon… %2Fcallback&scope=r_emailaddress%20r_basicprofile&client_id=7708er3z2xorot'" 

,这不允许需要预检的跨源请求。

如果我手动点击链接,它会显示授权页面;另外,我注意到LinkedIn在API请求数量正在增加,但我不能让授权页面出现?

回答

0

我发现我做了什么错误,并希望分享的修正和解决方案:

本来,我正在从我的客户的$ http.get调用(使用AngularJS)到我的服务器(的NodeJS)。我从服务器调用了称为护照的功能。

相反,现在我只设置窗口地址$ window.location.href = myServerRouteLinkedin

$scope.loginOauth = function (provider) { 
     $window.location.href = environment.apiAuthentication + '/login/' + provider; 
    } 

希望它可以帮助别人。