【发布时间】:2017-03-15 20:33:00
【问题描述】:
我正在使用 retrofit2 向服务器发出 put 请求。使用 postman 使用相同的标记、正文和路径,内容已成功编辑,但使用改造 2 时出现相同的错误,说明前提条件失败。 412 错误。
@PUT("issues/{id}/")
Call<IssueList> putIssue(@Header("Authorization")String token,
@Body IssueList issue,
@Path("id") Double issueId);
编辑
Call<IssueList> issuePostRequest = postService.putIssue(Splash.token,
issueRequest,editIssueId);
issuePostRequest.enqueue(new Callback<IssueList>() {
@Override
public void onResponse(Call<IssueList> call, Response<IssueList> response) {
if (!response.isSuccessful()){
System.out.println(response.message());
System.out.println(response.code());
System.out.println(response.headers());
return;
}
System.out.println("passed");
}
@Override
public void onFailure(Call<IssueList> call, Throwable t) {
}
});
响应不成功。
【问题讨论】:
-
尝试不使用最后一个斜线,@PUT("issues/{id}")
-
我以前试过。那是行不通的。
-
您确定 id 是
Double吗?听起来有点奇怪。我什至不知道改造会如何格式化它,但我怀疑它会添加小数位,这对于 id 来说听起来很奇怪。这将产生一个类似issues/123.0/的网址