781 Star 1.5K Fork 350

开源中国 / Gitee Feedback

 / 详情

OpenAPI 对公开仓库忽略 access_token 参数

意向
需求(问题或诉求)
创建于  
2020-10-29 23:08

任务描述

在使用 OpenAPI 时遇到一个问题,以 获取用户的某个仓库 https://gitee.com/api/v5/repos/{owner}/{repo} 这个接口为例,该接口有两个必要参数:owner, repo,还有一个可选参数 access_token(下称 token)。对于公开仓库,token 可缺省,而对于私有仓库,这个参数是必须的。考虑以下两种情况:

  • 当前没有获取到 token,那么对于公开仓库,只要不传 token 参数,接口可以调用成功;
  • 当前已经获取到了 token,因为不知道这个 token 是否有效,所以对于公开仓库,为保险起见,直接不传 token 调用接口是可以成功的(因为如果传入了错误的 token,即使是公开仓库,接口仍然请求不到数据),对于私有仓库,始终都需要传入 token 参数;

那么问题来了,在调用接口前怎么知道仓库是公开的还是私有的呢?

如果说不用在调用接口前不需要考虑仓库是公开还是私有的,那么应该传入 token 参数还是不传呢?如果不传 token,公开仓库可以获取到数据,但是对私有仓库是无法获取数据的;如果传 token,如果这个 token 是有效的,那么无论是私有仓库还是公开仓库都没问题,但是如果 token 是无效的,就都获取不到数据了。

解决方案

对公开仓库忽略传入的 access_token 参数,这样无论是否传入 access_token 或者 access_token 这否有效,都能获得正确响应的数据

任务来源

评论 (0)

mathink12 创建了任务
沈朝华 负责人设置为反向抽烟李丰田
诺墨 将工作项从 任务 迁移到 需求(问题或诉求)
诺墨 任务类型任务 修改为需求(问题或诉求)
诺墨 任务状态待办的 修改为意向
展开全部操作日志

登录 后才可以发表评论

状态
负责人
项目
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
预计工期 (小时)
参与者(2)
8297259 l821732264 1664001777
Ruby
1
https://gitee.com/oschina/git-osc.git
git@gitee.com:oschina/git-osc.git
oschina
git-osc
Gitee Feedback

搜索帮助

53164aa7 5694891 3bd8fe86 5694891