首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >请放心-如何鼓动"Transfer-Encoding: chunked“-我当前收到apache错误"Transfer-encoding header already”

请放心-如何鼓动"Transfer-Encoding: chunked“-我当前收到apache错误"Transfer-encoding header already”
EN

Stack Overflow用户
提问于 2015-11-13 21:43:40
回答 1查看 1.3K关注 0票数 3

我对Java和REST/REST非常陌生。我试图创建一个POST请求,设置了" Transfer-encoding : chunked“(通过头部),但是我得到了异常”org.apache.http.ProtocolException:Transfer-encoding头部已经存在“。

我使用的代码类似于下面的.....@测试.......contentType(MediaType.APPLICATION_OCTET_STREAM) ().headers(使用设置所需头部的方法,包括“传输编码”) .body("testdata".getBytes()) testdata().all() .expect() .statusCode(HttpStatus.SC_OK) .post();

但是我得到了一个异常"org.apache.http.ProtocolException: Transfer-encoding头已经存在“。

有谁知道为什么我会得到异常/我该如何解决它?提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2017-10-05 01:08:52

昨天我可以使用octate流了。

代码语言:javascript
复制
given().urlEncodingEnabled(false)
            .config(RestAssured.config()
                    .encoderConfig(new EncoderConfig().appendDefaultContentCharsetToContentTypeIfUndefined(false)
                            .encodeContentTypeAs("application/octet-stream", ContentType.TEXT)))

您不需要添加传输编码,因为REST Assure框架会为您添加传输编码。

您需要urlEncodingEnabled,因为它会自动编码,而需要encodeContentTypeAs作为使用序列化程序的内部框架。

这可能会对将来可能面临类似问题的其他人有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33694142

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档