我最难以尝试生成 OAuth2令牌 以与 Bitly API v4 集成。他们的文档很难理解,我在网上或StackOverflow上找不到太多有关如何完成该文档的信息。我能够使它正常工作,并希望与其他将来挠头的人共享该解决方案。
以下是有关生成 通用访问令牌 ,检索 Group Guid 的分步指南, 生成OAuth2令牌 ,然后调用Bitly shortening API请求。
答案 0 :(得分:2)
Bitly API -获取 oAuth2访问令牌并使用 shortening 请求使用检索Tiny Url的步骤邮递员:
花了一天的时间尝试解决这个问题后,我想我会发布此消息,以便它可以帮助尝试与 Bitly API V4 集成的人。
注意: Bitly API V3将于2020年3月1日停用,因此请确保尽快迁移到V4。响应中的所有Guid和其他私有字段都已出于隐私目的进行了更改。
点击此链接以引用Bitly API Documentation
1。)生成访问令牌:
使用您的凭据登录bitly.com,然后单击右上角的Hamburger菜单。单击您的用户名,然后单击 通用访问令牌 。需要此 通用访问令牌 来检索您的 Group Guid 。您将需要此Group Guid来进行简短的URL请求以及您的访问令牌。
2。)检索组指南:
向https://api-ssl.bitly.com/v4/groups发送 GET 请求以获取您的group_guid。 您将在“授权”字段中使用通用访问令牌 。
下面是图片标题的外观:
您应该获得一个类似于以下JSON的JSON响应:
检索组Guid GET响应的JSON响应
{
"groups": [
{
"created": "2019-12-18T13:45:21+0000",
"modified": "2019-12-18T13:45:21+0000",
"bsds": [],
"guid": "XZXUYSJAJ43",
"organization_guid": "JsjFtE841883",
"name": "username",
"is_active": true,
"role": "org-admin",
"references": {
"organization": "https://api-ssl.bitly.com/v4/organizations/JsjFtE841883"
}
}
]
}
您的 guid 值是您在缩短和其他请求中使用的 group_guid 。
3。)获取您的client_id和client_secret
通过使用用户凭据登录到bitly.com来注册您的应用程序,然后将为您的应用程序分配一个client_id和一个client_secret。您可以通过点击页面右侧的“汉堡包”菜单,点击您的用户名,“已注册的OAuth应用”,并在底部的按钮上添加一个 注册新应用 。
4。)生成OAuth2访问令牌
请参阅Bitly Documentation,然后在“身份验证”选项卡下导航至 “为访问令牌交换用户名和密码” 。
•打开邮递员
•为https://api-ssl.bitly.com/oauth/access_token创建一个新的 POST 请求。
•复制Curl命令,但将用户名替换为Bitly Login用户名,并将密码替换为Bitly Login Password。
•单击“导入”选项卡,然后选择“粘贴原始文本并粘贴在curl上”命令
•在“授权”选项卡中,将您的 client_id 粘贴到用户名字段和 client_secret 进入密码字段。这将为您完成 base64encoding 。
•标头仅需主机和 Content-Type 键和值。您的授权将是一个临时标题字段,并将自动为您生成。
•您的身体需要:
grant_type :密码(实际的密码)
用户名:您的bitly.com用户名
密码:您用于bitly.com的密码
下面是您的身体外观的图片:
•单击发送,您将收到访问令牌。
5。)缩短网址
•在Postman中打开新标签,并向https://api-ssl.bitly.com/v4/shorten
发出发布请求•标题应包括:
•主机: api-ssl.bitly.com
•授权: Bearer(您从第4步获得的访问令牌)
•内容类型: application / json
•您的正文应包含以下JSON:
{
"long_url": "http://twitter.com",
"group_guid": "guid field from Group Guid Response in Step 2"
}
•单击发送,您应该看到这样的JSON响应:
{
"created_at": "2019-12-18T21:50:47+0000",
"id": "yhoo/2PYRS",
"link": "http://yhoo/2PYRS",
"custom_bitlinks": [],
"long_url": "http://yahoo.com/",
"archived": false,
"tags": [],
"deeplinks": [],
"references": {
"group": "https://api-ssl.bitly.com/v4/groups/yourgroupguid"
}
}
JSON响应中的 link 值将是您的新Tiny URL链接。