带有angularjs的github redirect_uri
我正在尝试在我的应用程序中使用
github添加登录.因此,在我的本地计算机上进行测试时,我将回调网址设置为http:// localhost:8000 / login / callback /.
之后,我添加了一个登录链接到我的页面,< a href =“https://github.com/login/oauth/authorize?client_id=CLIENT_IDu0026amp;scope=useru0026amp;redirect_uri=http://localhost :8000 / login / callback“>登录< / a>,以及 $routeProvider.when('/login/callback',{ controller: 'loginCtrl' }); 它成功返回了一个代码,其中包含如下链接:http:// localhost:8000 / login / callback?code = cd07ff3b70f5d1d1b8a2.但angularjs无法正确响应. Error response Error code 404. Message: File not found. Error code explanation: 404 = Nothing matches the given URI. 我也尝试将redirect_url设置为http:// localhost:8000 /#/ login / callback,但是返回链接就像这样http:// localhost:8000 /?code = 61e9c8b73c073a0bccc0 /#/ login / callback 我需要将代码显示在url的末尾,而不是在中间,以便我可以使用$location.search().代码来获取我的代码.我该如何正确设置? 喜欢改变我的redirect_uri或改变我的路由器? 解决方法
@lowerkey我仍然不知道如何处理这个,但我认为那是因为页面被重新加载.
如果你没有将html5Mode设置为true,那么将在URL上#,如果你重新加载页面,#将跟踪信息到$scope以使用htmlHistory api,这样应用程序即使在页面刷新. 但是一旦你将html5Mode设置为true,那么就没有#存储任何$scope信息,当页面重新加载时,angular无法找到相应的范围,因此返回404. 您可以查看$location section on angularjs guide,它有一节解释为什么会发生这种情况.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |