如何使用改进将字符串作为byte []发布

时间:2016-11-17 12:31:59

标签: java android retrofit

我需要将我的查询字符串发布为带有改造2的byte [];我怎样才能做到这一点?是为此目的的任何转换器? 当我使用这段代码时:

Call<ResponseBody> login(@Body byte[] body);

我收到此错误:

Unable to create @Body converter for byte[]

1 个答案:

答案 0 :(得分:0)

您可以使用基本@POST("/login") Call<ResponseBody> login(@Body RequestBody body); ,例如界面如下所示:

final byte[] byteArray = ...;
RequestBody typedBytes = new RequestBody() {
    @Override
    public MediaType contentType() {
        return MediaType.parse("application/json");
    }

    @Override
    public void writeTo(BufferedSink sink) throws IOException {
        sink.write(byteArray);
    }
};
rest.login(typedBytes).enqueue(...);

然后:

bpm:activitiStartTask

MIME类型当然取决于您的情况。