【发布时间】:2016-02-27 15:45:00
【问题描述】:
我正在尝试向 github 发送发布请求以创建存储库。我的 oauth 2.0 工作正常,请求已正确签名,但 github 只是返回“解析 JSON 的问题”
我将 Scribe 用于 oauth 方面,据我所知,我已将 JSON 添加到 URL,但我不能 100% 确定我做对了,或者我只是缺少标题或者其他的东西?
@POST
@Path("create_repo/{userid}")
@Produces(MediaType.APPLICATION_JSON)
public Response createRepo(@PathParam("userid") String userid) {
OAuthService service = createService().build();
User user = collection.findOneById(userid);
final OAuthRequest request = new OAuthRequest(Verb.POST, "https://api.github.com/user/repos", service);
Token token = new Token(user.getGithubToken(), "SECRET");
service.signRequest(token, request);
request.addHeader("Content-type", "application/vnd.github.v3+json");
request.addHeader("X-OAuth-Scopes", "repo");
request.addQuerystringParameter("name", "Test_v1");
LOGGER.info("Built request: " + request.getCompleteUrl());
final com.github.scribejava.core.model.Response response = request.send();
return Response.ok(response.getBody()).build();
}
构建的 URL 如下所示:https://api.github.com/user/repos?access_token=XXX_SECRET_XXX&name=Test_v1
我也尝试在参数之后交换 access_token,但结果相同。
感谢任何帮助。
【问题讨论】:
标签: java github-api scribe