【问题标题】:Instagram oauth flow in angularjsangularjs中的Instagram oauth流程
【发布时间】:2016-09-07 18:08:48
【问题描述】:

我正在使用 angularJs 并提供一个按钮让用户授权 Instagram。

我可以通过传递https://api.instagram.com/oauth/authorize/?client_id=CLIENT-ID&redirect_uri=REDIRECT-URI&response_type=token来测试我在redirectUrl中得到accessToken。

问题是如何在 angularJs 按钮单击中调用此流程。目前我所拥有的如下:

html 授权给 Instagram

js

app.controller('AdminController', ['$scope', function($scope){
...
    this.authorizeIg = function(){
            console.log('start of authorizeIg implict flow');
            window.location.href = "https://api.instagram.com/oauth/authorize/?client_id=CLIENT-ID&redirect_uri=REDIRECT-URI&response_type=token";
        };

上面只会在身份验证后将我重定向到redirect_url。所以,我不知道如何在函数中调用该 url 并返回包含 accessToken 的响应

【问题讨论】:

    标签: javascript angularjs oauth-2.0 instagram-api


    【解决方案1】:

    单击一次按钮只会重定向网页以生成访问令牌,但不会保存它。 Instagram 不会返回带有访问令牌的响应结果。

    "https://api.instagram.com/oauth/authorize/?client_id=CLIENT-ID&redirect_uri=REDIRECT-URI&response_type=token";
    

    在 angularJS 中,在上面添加 redirect_uri 例如:http://localhost/angularapp/:accessToken 会将您的应用程序重定向到此 Uri,其中包含以下链接:http://localhost/angularapp/#access_token=ACCESS-TOKEN 成功验证。

    您可以使用 angular 的 $routeParams 指令在应用程序中捕获此令牌。

    $scope.token = $routeParams.accessToken 在您的 redirect_uri 中明确定义。

    【讨论】:

    • 问题是我正在使用 ng-view 这使得 url 像 host:port/myapppage#admin 和 ig 不喜欢它作为一个有效的 uri。我想打开一个弹出窗口,然后完成身份验证获取访问令牌等并关闭它
    • 这有帮助吗:liquidint.com/blog/…
    猜你喜欢
    • 2015-11-17
    • 2012-10-20
    • 2015-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-01
    • 2012-01-04
    相关资源
    最近更新 更多