天天看点

Facebook, Twitter, Telegram API开发存档Facebook, Twitter, Telegram API开发存档

Facebook, Twitter, Telegram API开发存档

概述

搞这玩意儿的背景是当时要开发一个获取用户信息的接口,要用户在第三方界面登陆之后我们取信息,API功能挺简单的,就是文档太恶心了

开发过程中看过的文档记一份存档放在这里, OAuth 过程相关的内容另外开一篇文章记录

facebook

开发者账户需要验证身份证件

开发者平台:

https://developers.facebook.com

文档:

https://developers.facebook.com/docs/graph-api/using-graph-api/

https://developers.facebook.com/docs/graph-api/reference/user/groups/

# 查询特定用户的分组
GET /v10.0/{user-id}/groups HTTP/1.1
Host: graph.facebook.com
           

前端拿access_token: 使用sdk

https://developers.facebook.com/docs/graph-api/using-graph-api/
           

facebook lookup_id:

https://lookup-id.com/#
           

twitter:

申请开发app(小心,失败一次不能解封,我就跪了)

获取用户信息

见 <Oauth流程> 文档

相关在线文档:

# 总览
https://developer.twitter.com/en/docs/developer-portal/overview
# 用 twitter app 取token
https://developer.twitter.com/en/docs/authentication/oauth-2-0/bearer-tokens
# 用 GET friends/list 方法,取用户正在 "follow" 的用户列表
https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-friends-list
           

传输数据:

social_media_type = "twitter"
           

Telegram

再使用bot api查询群组中是否有对应用户id

# 这里的channel_id是trust dice news
# 当前例子是直接使用 bot api 进行查询
https://api.telegram.org/bot<token>/<method name>?<parameters>
# 当前使用 getChatMember 方法获取组内特定用户信息, 根据"status" 判断用户是否在频道中
# 若未关注, 就是left
# The member’s status in the chat. Can be ‘creator’, ‘administrator’, ‘member’, ‘restricted’, ‘left’ or ‘kicked’.
# 示例
https://api.telegram.org/bot<telegram bot token, 该项为敏感信息>/[email protected]&user_id=<user_id, 可在 @userinfobot 中获取>

# 需要把bot加入到频道管理员, 否则每次查询都会user not found
# 在telegram更改bot权限后, 生效会有延迟,经验值是 10-20min 后生效
           

相关文档:

https://cloud.tencent.com/developer/ask/141496
https://core.telegram.org/bots/api#getchatmember
           

继续阅读