知乎 OAuth 2.0 接入指南
快速开始
- 申请开通:发送邮件至
product-platform@zhihu.com申请app_id和app_key,并提供redirect_uri - 引导授权:将用户跳转至知乎授权页面
- 处理回调:在
redirect_uri接收code,后端换取access_token - 获取用户信息:使用
access_token调用用户信息接口
参考文档
- 申请开通:见 references/application.md — 包含申请邮箱、邮件主题、所需信息
- 授权流程:见 references/authorization-flow.md — 包含完整授权流程、回调处理、错误码
- API 参考:见 references/api-reference.md — 包含授权、Token 交换、用户信息、社交关系接口的详细请求与响应
脚本工具
- Python 完整示例:
scripts/zhihu-oauth-example.py - Node.js/Express 完整示例:
scripts/zhihu-oauth-example.js
核心端点
| 用途 | 端点 | 方法 |
|---|---|---|
| 授权页 | https://openapi.zhihu.com/authorize |
GET |
| 换取 Token | https://openapi.zhihu.com/access_token |
POST |
| 用户信息 | https://openapi.zhihu.com/user |
GET |
| 粉丝列表 | https://openapi.zhihu.com/user/followers |
GET |
| 关注列表 | https://openapi.zhihu.com/user/followed |
GET |
| 关注动态 | https://openapi.zhihu.com/user/moments |
GET |
注意事项
app_id和app_key需通过环境变量注入,严禁硬编码或提交到代码仓库- 必须生成随机
state参数防止 CSRF 攻击,并在回调时验证 - Token 交换必须在后端完成,不能暴露给前端
- 知乎 OAuth 目前不支持
refresh_token,token 默认有效期 30 天 - 生产环境
redirect_uri必须使用 HTTPS