我正在 kotlin 中使用 Retrofit 从 github 存储库获取问题列表。我想使用搜索 api(我已使用 api.github.com/repos,但我的用例需要 /search)。 如何实现以下格式的查询?
https://api.github.com/search/issues?q=something%20repo:torvalds/linux%20state:已关闭
如何使用基于冒号的空格分隔查询?
我的代码是这样的,但我显然错了
@GET("search/issues")
suspend fun getRepoIssues(
@Header("Authentication") authToken: String,
@Query("q") q: String
): Response<APIResponse>
我收到 422 错误
身份验证标头应为
"Authorization"
而不是 "Authentication"
。 q 参数应使用 GitHub 搜索 API 的正确格式构建。
更正后的代码如下所示,
interface GitHubService {
@GET("search/issues")
suspend fun getRepoIssues(
@Header("Authorization") authToken: String,
@Query("q") q: String
): Response<APIResponse>
}
# usage
val query = "something repo:torvalds/linux state:closed"
val response = githubService.getRepoIssues("your_auth_token", query)