【问题标题】:Value missing though required retrofit 2.0尽管需要改造 2.0,但缺少值
【发布时间】:2016-10-06 22:19:12
【问题描述】:

我正在使用 Retrofit 2.0 创建用于在服务器上上传文件的改造服务。

我指的是https://futurestud.io/blog/retrofit-2-how-to-upload-files-to-server

下面是我的 FileUploadService 代码:

interface TripHistoryFileUploadService {
@Multipart
@POST("trip/trip-history")
Call<ResponseBody> upload(@Part("json_file") RequestBody description,
                          @Part MultipartBody.Part file);

}

我正在使用以下改装版本:

 compile 'com.squareup.retrofit2:retrofit:2.0.0-beta4'

但我收到错误 Value missing but required 如下所示:

任何人都可以面临同样的问题,或者任何人都可以解决同样的问题吗?

【问题讨论】:

标签: android android-studio retrofit retrofit2


【解决方案1】:

beta 版是程序或应用程序的早期版本, 包含大部分主要功能,但尚未完成。

你应该使用稳定版

compile 'com.squareup.retrofit2:retrofit:2.0.2' //A type-safe HTTP client

然后Clean -Rebuild-Sync你的IDE。希望这对你有帮助。

【讨论】:

  • @pRaNaY 很高兴听到。继续前进。
【解决方案2】:

您在第二个参数中缺少 零件名称

interface TripHistoryFileUploadService {
    @Multipart
    @POST("trip/trip-history")
    Call<ResponseBody> upload(@Part("json_file") RequestBody description,
                          @Part("part_name_missing here") MultipartBody.Part file);
    }
    }

【讨论】:

    【解决方案3】:

    我遇到了类似的情况,结果证明这是微不足道的事情 - 我从第一个版本的改造而不是第二个版本中导入了零件。 所以至少你可以做的是检查你是否有

    import retrofit.http.Part; -> requires value
    

    而不是

    import retrofit2.http.Part; -> doesn't required value
    

    【讨论】:

      猜你喜欢
      • 2021-10-27
      • 2021-09-27
      • 2019-10-31
      • 1970-01-01
      • 2011-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多