用 Instagram API 来理解,接口是什么?接口是怎么运作的?(二)

打开 Authentication 页面,我们需要获取一个 access_token,这是访问令牌。简单来说,就是可以让你在一定时间内,不需要每次都验证 ID 和 Secret,来获取数据的一个令牌。

为了安全,令牌有有效期,过了有效期令牌就会失效,我们要重新获取领取。这是为什么有些 app 我们太久没打开,要求重新登录的原因。

怎么获得 access_token,根据提示,我们需要访问下面这个地址:

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

注意,不是复制这段 URL 去访问,大写字母是需要我们替换的内容。我们刚才拿到了 Client ID 和 Redirect URIs,所以最终我需要访问的 URL 是:

https://api.instagram.com/oauth/authorize/?client_id=a273c29c3ff64fc1804beb63cb85ca17&redirect_uri=http://localhost&response_type=code

怎么访问?直接复制到浏览器地址栏,回车即可。(你要替换成你自己的资料,我的肯定是失效的。)

这时,我们会打开一个授权页面,问你是否授权测试这个应用,点授权即可,然后页面会重新跳转。

等下,页面挂了?别担心,只是重定向了,留意地址栏,变成了:

http://localhost/?code=7d4bd932226747c1ad022855e6d2f356

code 是 7d4bd932226747c1ad022855e6d2f356。

我们获得了 code 信息,暂时还没拿到 access_token,但就差最后一步了。往下翻,我们需要再有这样一个请求:

    curl -F 'client_id=CLIENT_ID' \
    -F 'client_secret=CLIENT_SECRET' \
    -F 'grant_type=authorization_code' \
    -F 'redirect_uri=AUTHORIZATION_REDIRECT_URI' \
    -F 'code=CODE' \
    https://api.instagram.com/oauth/access_token

同样地,我们把大写字母都替换一下,换了我们刚才拿到的资料,即变成:

    curl -F 'client_id=a273c29c3ff64fc1804beb63cb85ca17' \
    -F 'client_secret=b548b985e53749518c4c22f693b6c9fb' \
    -F 'grant_type=authorization_code' \
    -F 'redirect_uri=http://localhost' \
    -F 'code=7d4bd932226747c1ad022855e6d2f356' \
    https://api.instagram.com/oauth/access_token

注意检查一下,复制粘贴的时候不要多出空格。然后这次我们不是在浏览器输入,Mac 是在「终端 (Term)」这个 app 里面,Windows 是在命令行。

输入后回车,就能得到我们想要的结果了。

{
  "access_token": 
  "631487536.a273c29.573aa95fa1b6403db80fe6ac60191c4f", 
  "user": {
    "id": "631487536", 
    "username": "ethonlau", 
    "profile_picture": "https://scontent.cdninstagram.com/vp/8a497f3eebaea72dda8fe47ddee1d3a8/5BBAF55E/t51.2885-19/s150x150/13129637_1738545199758157_1620655362_a.jpg", 
    "full_name": "\u5218\u82f1\u6ed5"
  }
}

这时,我们的 access_token 已经拿到,access_token 是 631487536.a273c29.573aa95fa1b6403db80fe6ac60191c4f,依然是把它记下来。

(code 只能用一次,如果你刚才没把 access_token 记下来,请重来一遍。)

咦?我们还发现了一些熟悉的信息。比如 username 不就是我 Instagram 的名字吗?把 profile_picture 的地址在浏览器访问一下,居然就是我的头像图片了!没错,这是我们刚才用于授权的那个用户的资料。

这就是一次简单的接口请求。接口的地址是 https://api.instagram.com/oauth/access_token,把所需要的资料填对,一并发送,接口就会给我们返回数据了,而这种数据交换格式便是 json。只不过实际上,我们会用更复杂和强大的工具去请求数据而已。

现在有了 access_token,我们可以去请求更多数据了。


下一篇

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,736评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,167评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,442评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,902评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,302评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,573评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,847评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,562评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,260评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,531评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,021评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,367评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,016评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,068评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,827评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,610评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,514评论 2 269

推荐阅读更多精彩内容