instagram授权流程(第二篇)

原文链接: https://juejin.im/post/5d47a67b6fb9a06ae37245e5

本文分客户端、服务端演示获取access_token的流程,

上一篇介绍了账号注册、官方文档

客户端demo(不推荐)

准确讲,这不是个demo,把流程梳理一下而已

1. 访问下面的网址,注意使用你的ID,你的重定向地址,其余不变

https://www.instagram.com/oauth/authorize/?client_id=你的ID&redirect_uri=你的重定向地址&response_type=token

注意服务端请求response_type=token
访问后回来到这个授权页面

instagram授权流程(第二篇)_第1张图片

点击登录

instagram授权流程(第二篇)_第2张图片

得到token,就是网址里#access_token=xxxxx

2. 有了token,我们去请求一个官方的api

这个api可以得到该用户最近发送的图片
https://api.instagram.com/v1/users/self/media/recent?access_token=替换为上一步得到的token

访问这个网址,得到了我的个人信息和我最近发送的图片

instagram授权流程(第二篇)_第3张图片

服务端demo(推荐)

准确讲,这不是个demo,把流程梳理一下而已

  1. 第一步 拼接下面的url地址,让用户访问会调起授权登录页面

instagram授权流程(第二篇)_第4张图片

https://api.instagram.com/oauth/authorize/?client_id=你的ID&redirect_uri=你的重定向地址&response_type=code

注意服务端请求response_type=code

  1. 登录成功后,重定向到你指定的url

instagram授权流程(第二篇)_第5张图片

注意看url最后的code=xxxxx,这一步就是为了获取code

  1. 服务端发起一个post请求

请求地址为:https://api.instagram.com/oauth/access_token

对应参数如下图,
id、secret、重定向url在自己的后台查找,code就是上一步得到的code

instagram授权流程(第二篇)_第6张图片

点击send,就会得到下面的json,其中access_token你要的,下面是用户的简要信息
instagram授权流程(第二篇)_第7张图片

{
    "access_token": "fb2e77d.47a0479900504cb3ab4a1f626d174d2d",
    "user": {
        "id": "1574083",
        "username": "snoopdogg",
        "full_name": "Snoop Dogg",
        "profile_picture": "..."
    }
}
  1. 到这里,已经获取access_token,可以访问官网api去得到用户的一些数据了

你可能感兴趣的:(知识点)