【问题标题】:Return info from instagram authentication从 Instagram 身份验证返回信息
【发布时间】:2014-12-27 00:01:10
【问题描述】:

使用客户端 Instagram authentication,我可以获得一个访问令牌,允许我查看用户媒体:

https://instagram.com/oauth/authorize/?client_id=#####&redirect_uri=http..&response_type=token'

但是,当我被重定向时,用户需要重新输入他们的用户名。有没有办法避免这种情况?例如直播here

【问题讨论】:

    标签: javascript authentication instagram


    【解决方案1】:

    使用您的网站有几种不同的方法可以实现这一点。

    选项一
    当用户使用 access_token 从 Instagram 返回时,在当前通话中用“self”替换 {userid}。

    您当前的通话:

    https://api.instagram.com/v1/users/1167507032/media/recent?access_token={ACCESS_TOKEN}&callback={CALLBACK}

    让通话看起来像这样:

    https://api.instagram.com/v1/users/self/media/recent?access_token={ACCESS_TOKEN}&callback={CALLBACK}

    选项二
    当用户使用 access_token 从 Instagram 返回时,再调用一次 Instagram API 以获取当前用户的姓名/ID,如下所示:

    var requestUrl = 'https://api.instagram.com/v1/users/self?' + ACCESS_TOKEN
    var userId = ''
    var userName = ''
    
        $.ajax({
            type : "GET",
            dataType : "jsonp",
            url : requestUrl,
            success : function(response) {
                userId = response.data.id
                userName = response.data.username
            }
        });
    

    这两个都应该工作,显然使用选项 2,您将向 ajax 调用添加回调,我只是想显示您将在响应中获得所需信息的位置。

    【讨论】:

    • 对于被重定向的私人用户,目前无法从身份验证中传回用户名。这意味着用户必须重新输入,这很痛苦。
    • 检查编辑,如果这不起作用,请告诉我
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-01
    相关资源
    最近更新 更多