【问题标题】:Retrofit HTTP Get with dynamic URL使用动态 URL 改造 HTTP Get
【发布时间】:2014-06-16 12:26:59
【问题描述】:

我的界面是这样的

@Headers("Content-Type: application/json")
@GET("/api/session/{id}")
void getSession(
         @Path("id") String id, Callback<JsonObject> callback
);

但我不断收到,No retrofit annotation found. 当搜索此错误的原因时,最常见的答案是请求期待 @Body。但我不想在我的 url 中加入正文。

我得到的异常

java.lang.IllegalArgumentException: AuthApi.getSession: No Retrofit annotation found.
(Parameter#1)
at retrofit.RestMethodInfo.methodError(RestMethodInfo.java:123)
at retrofit.RestMethodInfo.parameterError(RestMethodInfo.java:127)
at retrofit.RestMethodInfo.parseParameters(RestMethodInfo.java:450)
at retrofit.RestMethodInfo.init(RestMethodInfo.java:134)
at retrofit.RestAdapter$RestHandler.invokeRequest(RestAdapter.java:294)
at retrofit.RestAdapter$RestHandler.access$100(RestAdapter.java:220)
at retrofit.RestAdapter$RestHandler$2.obtainResponse(RestAdapter.java:278)
at retrofit.CallbackRunnable.run(CallbackRunnable.java:42)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at retrofit.Platform$Android$2$1.run(Platform.java:142)
at java.lang.Thread.run(Thread.java:841)
END ERROR

【问题讨论】:

  • 您能否添加更多信息 - 调用 getSession 方法的代码和异常详细信息。
  • 请参阅编辑。我正在从首选项中获取 sessionId。
  • @ShahrozKhan91 你找到这个问题的答案了吗?我面临着类似的情况。
  • @IgorGanapolsky 对不起,我确实找到了解决方案。但我不记得那是什么了。据我所知,它与进口有关,请检查它们。

标签: android annotations http-get retrofit


【解决方案1】:

我在使用 SimpleXML Converter 进行改造时遇到了同样的问题。

问题是导入,我有:

import org.simpleframework.xml.Path;

代替:

import retrofit.http.Path;

【讨论】:

    猜你喜欢
    • 2017-08-26
    • 1970-01-01
    • 1970-01-01
    • 2019-09-16
    • 2015-12-10
    • 2023-03-16
    • 2016-12-09
    相关资源
    最近更新 更多