API 认证

Python 中的 API 入门

Chris Ramakers

Engineering Manager

访问敏感数据

用户尝试通过客户端访问音乐专辑。请求经由 API 发送到服务器,但收到"401 未授权"响应。

Python 中的 API 入门

访问敏感数据

用户通过客户端访问音乐专辑,并提供用户名和密码。请求经由 API 发送到服务器,收到"200 OK"响应,表示访问成功。

Python 中的 API 入门

认证方式

方法 实现难度 安全性
基本认证 ⭐ ⭐ ⭐ ⭐ ⭐ ⭐ ☆ ☆ ☆ ☆
API 密钥/令牌认证 ⭐ ⭐ ⭐ ⭐ ☆ ⭐ ⭐ ☆ ☆ ☆
JWT 认证 ⭐ ⭐ ⭐ ☆ ☆ ⭐ ⭐ ⭐ ⭐ ☆
OAuth 2.0 ⭐ ⭐ ☆ ☆ ☆ ⭐ ⭐ ⭐ ⭐ ⭐

 

提示:查看所用 API 的文档,了解应使用哪种认证方式!

Python 中的 API 入门

基本认证

使用 requests 包进行基本认证

# 发送请求前会自动添加 Basic Authentication 头
requests.get('http://api.music-catalog.com', auth=('username', 'password'))
Python 中的 API 入门

API 密钥/令牌认证

使用查询参数

http://api.music-catalog.com/albums?access_token=faaa1c97bd3f4bd9b024c708c979feca
params = {'access_token': 'faaa1c97bd3f4bd9b024c708c979feca'}
requests.get('http://api.music-catalog.com/albums', params=params)

使用"Bearer"授权头

headers = {'Authorization': 'Bearer faaa1c97bd3f4bd9b024c708c979feca'}
requests.get('http://api.music-catalog.com/albums', headers=headers)
Python 中的 API 入门

开始练习吧!

Python 中的 API 入门

Preparing Video For Download...