我正在尝试使用Retrofit库上传图像.这是我上传的方式:
请求代码:
@Multipart
@POST("/customerapp/{context}/{token}/passenger/passport/add/{passengerId}")
@Headers({
"Accept: application/xml",
"Accept-Encoding: gzip"
})
void UploadImage(
@Path("context") String context,
@Path("token") String token,
@Path("passengerId") String passengerId,
@Query("fileType") String fileType,
@Query("imageCategory") int imageCategory,
@Part("imageContent") TypedFile file,
Callback<VJSuccessResponse> callback
);
public static final String BASE_URL =
"http://webservicetest.abc.com/extranetServices/1.1";
RequestInterceptor requestInterceptor = new RequestInterceptor() {
@Override
public void intercept(RequestFacade request) {
Log.e("Retrofit Request Body", request.toString());
}
};
RestAdapter restAdapter = new RestAdapter.Builder()
.setEndpoint(BackendConstants.BASE_URL)
.setClient(new OkClient(new OkHttpClient()))
.setConverter(new SimpleXMLConverter())
.setLogLevel(RestAdapter.LogLevel.FULL)
.setRequestInterceptor(requestInterceptor)
.build();
REST_CLIENT = restAdapter.create(BackendAPI.class);
REST_CLIENT.UploadImage(
BackendConstants.CONTEXT,
StateObject.sSPManager.getStoredPersonalDetails().getToken(),
passengerId,
new …Run Code Online (Sandbox Code Playgroud)