我最难以尝试生成 OAuth2 token 以便与 Bitly API v4 集成。他们的文档很难理解,我无法在网上或在StackOverflow上找到有关如何完成此操作的大量信息。我能够使它正常工作,并希望与其他将来挠头的人分享该解决方案。

以下是生成通用访问 token ,获取组Guid ,生成OAuth2 token 以及调用Bitly 缩短 API请求的分步指南。

最佳答案

Bitly API -获取 oAuth2访问 token 的步骤,并使用缩短请求以使用 postman 来检索Tiny Url:

在花了一天的时间来解决这个问题之后,我想我会发布此消息,以便它可以帮助尝试与 Bitly API V4 集成的人。

注意: Bitly API V3将于2020年3月1日停用,因此请确保尽快迁移到V4。响应中的所有向导和其他私有(private)字段均已出于隐私目的进行了更改。

单击此链接引用Bitly API Documentation

1.)生成访问 token :

使用您的凭据登录bitly.com,然后单击右上角的“汉堡包”菜单。单击您的用户名,然后单击通用访问 token 。需要此通用访问 token 来检索组Guid 。您将需要此Group Guid来进行简短的URL请求以及您的访问 token 。

2.)检索组向导:

https://api-ssl.bitly.com/v4/groups发出 GET 请求以获取您的group_guid。 您将在“授权”字段中使用您的通用访问 token 。

下图是标题的外观:

rest - Bitly API-如何生成OAuth2 token 以与Bit.ly API V4集成并创建缩短的url?-LMLPHP

您应该返回一个类似于以下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。您可以通过单击页面右侧的Hamburger菜单来完成此操作,单击您的用户名,Registered OAuth Apps,在底部应该是一个按钮,上面写着 REGISTER NEW APP

4.)生成OAuth2访问 token

请引用Bitly Documentation,然后在“身份验证”选项卡下导航至“为访问 token 交换用户名和密码”

• postman

•创建对https://api-ssl.bitly.com/oauth/access_token的新 POST 请求。

•复制“ curl 命令”,但用“用户登录名”替换用户名,并用“用户登录名”替换密码。

•单击“导入”选项卡,然后选择“粘贴原始文本并粘贴在curl上”命令

•在“授权”选项卡中,将 client_id 粘贴到用户名字段中,然后将 client_secret 粘贴到密码字段中。这将为您执行base64encoding。

•您的标题仅需要主机内容类型键和值。您的授权将是一个临时标题字段,并会自动为您生成。

•您的 body 需要:

grant_type :密码(实际字密码)

用户名:您的bitly.com用户名

密码:您的bitly.com密码

以下是您的 body 外观的图片:

rest - Bitly API-如何生成OAuth2 token 以与Bit.ly API V4集成并创建缩短的url?-LMLPHP

•单击发送,您将收到访问 token 。

5.)缩短URL

•在 postman 中打开新标签,然后向https://api-ssl.bitly.com/v4/shorten发出投递请求

header 应包括:

主机:api-ssl.bitly.com

授权:承载(您从第4步获得的访问 token )

内容类型: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响应中的链接值将是您的新Tiny URL链接。

08-28 06:08