Apifox 教程:简单配置 OAuth 2.0 和直接获取访问令牌

Apifox 教程:简单配置 OAuth 2.0 和直接获取访问令牌
最新回答
七月别困

2026-04-24 20:53:46

Apifox 教程:简单配置 OAuth 2.0 和直接获取访问令牌

Apifox 2.5.15 及以上版本已支持根据 OAuth 2.0 协议规范直接获取访问令牌,无需在其它工具中生成后再粘贴过来。以下是详细配置步骤:

一、了解 OAuth 2.0

OAuth 2.0 是一种授权框架,它允许第三方应用程序在得到用户授权后,有限度地访问一些开放的个人信息。其运行流程主要包括三个步骤:

  1. 获取授权码(code):用户在第三方应用中使用 OAuth 2.0 服务(如微信扫码登录)进行授权,这一步可以让客户端拿到授权码。
  2. 根据授权码申请访问令牌(Token):客户端使用授权码向认证服务器申请访问令牌,这个令牌允许客户端在一段时间内访问用户的受保护资源。
  3. 根据令牌获取开放资源:客户端使用获得的访问令牌去访问资源服务器,以获取用户授权范围内的受保护资源。

二、Apifox 配置 OAuth 2.0

Apifox 支持 OAuth 2.0 协议定义的五种常见授权模式,其中最常见和最经典的授权模式是 Authorization Code(授权码模式)。以下以阿里云 OAuth 2.0 登录为例,详细介绍如何在 Apifox 中配置该模式。

  1. 获取客户端 ID 和客户端密钥

    到 OAuth 2.0 服务提供者的后台(如阿里云的 RAM 控制台)获取客户端 ID(Client ID)和客户端密钥(Client Secret)。在阿里云中,需要新建一个 OAuth 应用,里面的应用 ID 就是客户端 ID。然后,在应用中创建一个密钥,创建时显示的 AppSecretValue 就是客户端密钥,只显示一次,需保存好。

  2. 在 Apifox 中配置客户端 ID 和客户端密钥

    打开任一接口或目录,选择“修改文档 -> Auth -> OAuth 2.0”选项。Apifox 中 OAuth 2.0 默认选择的授权模式为 Authorization Code(授权码模式),无需更改。在下方找到 Client ID 和 Client Secret,将从阿里云中获取到的应用 ID 和密钥分别填进去。

  3. 配置授权码的请求地址

    根据阿里云官方文档的描述,授权码的请求地址是

    https://signin.aliyun.com/oauth2/v1/auth
    。将这个地址填写到 Auth URL 里。这个地址可以理解为登录授权页面,在首次校验登录状态时会打开这个页面(客户端内为窗口),然后让用户填写用户名和密码。

  4. 配置回调地址

    回调地址(Callback URL)一般是自己的服务器的一个地址,需要配置到 OAuth 2.0 服务提供者的后台。开发时一般使用本地服务器(如

    http://127.0.0.1:8080/callback
    )。在阿里云中,点击“编辑基本信息”并填入回调地址。

    在 Apifox 中,也需要填写对应的回调地址。如果用的是 Apifox 的网页端,那么必须将 OAuth 2.0 服务提供者后台的回调地址指定为

    https://app.apifox.com/oauth2-browser-callback.html
    ,同样该地址也需要在 Apifox 中填写,否则重定向会失败,无法获取到授权码(code)。

  5. 配置访问令牌的请求地址

    根据阿里云官方文档的描述,使用授权码(code)向阿里云 OAuth 2.0 服务申请访问令牌(Token)时,其请求地址为

    https://oauth.aliyun.com/v1/token
    。将这个地址填写到 Access Token URL 里。

  6. 获取令牌与使用

    当客户端 ID、客户端密钥、授权码的请求地址、回调地址和访问令牌的请求地址都配置完毕后,可以点击“获取 Token”按钮来调试。点击后会弹出一个授权登录框,可以在这里填写用户名密码,或者通过手机扫码的方式来登录。

    填写用户名密码后,点击登录,会看到 Token 已成功获取。获取 Token 成功后,界面上会展示 Token 内容及其有效期。有了 Token 后就可以在接口中发送请求,已生成的 Token 会自动附加到请求头的 Authorization 中,添加至 Bearer 后发送出去。

三、其他配置项

在 Token 返回后,Apifox 会自动解析 OAuth 2.0 服务返回的其它信息。如果 OAuth 2.0 服务同时返回了 Access Token 和 ID Token,Apifox 会默认使用 Access Token。如果希望切换至 ID Token,可以在“使用的 Token 类型”选项中切换。

如果 OAuth 2.0 服务返回了 Refresh Token,将会出现“刷新 Token”按钮。当 Token 过期了,点击“刷新 Token”按钮即可直接获取新的 Token,而不会弹出登录窗口。

OAuth 2.0 服务的登录页面会记录用户的登录状态,重新获取 Token 时默认会使用上一次登录的账号。若希望更换账号,则可以点击“清除 Cookies”按钮,再点击“获取 Token”。

还可以点击“更多”选项添加更多加密设置,如果配置留空,它们会自动生成。

四、注意事项

  • Apifox 现支持根据 OAuth 2.0 标准协议规范获取 Token,只有当第三方平台的 OAuth 2.0 认证也遵循标准的协议规范时,才能成功获取 Token,否则会失败。
  • 目前国内许多平台提供的 OAuth 2.0 认证流程并未完全遵循协议规范,所以在 Apifox 中调试时可能会遇到报错。针对这种情况,推荐用手动的方式来构造登录页面,也就是配置“授权码的请求地址”,当请求地址在网页中成功重定向并获得授权码后,再使用 Apifox 来发送获取 Token 的请求。

通过以上步骤,你可以在 Apifox 中成功配置 OAuth 2.0 并直接获取访问令牌。