首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >HTTP Put设置内容类型

HTTP Put设置内容类型
EN

Stack Overflow用户
提问于 2013-01-15 13:38:30
回答 1查看 15.5K关注 0票数 0

如何将HTTP的内容类型设置为xxxx+xml?

我指的是这个链接Android,通过HTTP (SOAP)发送XML中的解决方案。当我们像这样设置内容类型时,我的意思是xml是随请求一起出现的:

代码语言:javascript
运行
复制
httppost.setHeader("Content-Type","application/soap+xml;charset=UTF-8");

但是,当我将soap类型更改为自定义时,xml在请求中消失(我在wireshark上看到),如下所示:

代码语言:javascript
运行
复制
httppost.setHeader("Content-Type","application/vnd.oma-pcc+xml;charset=UTF-8");

然后,我尝试只放置xml,这样请求就可以了:

代码语言:javascript
运行
复制
httppost.setHeader("Content-Type","application/xml;charset=UTF-8");

我想知道内容类型的具体规则是什么,而不是将其与xml类型结合在一起,以便xml仍然存在。

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2013-01-15 15:00:30

假设您使用的HTTPClient为4.1.3或更高-

在构造实体时,您可以选择为某些实体指定用于POST或PUT操作的内容。

应该使用一个ContentType对象来指定这个对象。

使用工厂方法.create(),您可以使用字符集指定mimetype -框架将使用ContentType正确地发出相关的标头。

示例API调用:

ContentType.create("application/vnd.oma-pcc+xml", CharSet.forName("UTF-8"));

注释HttpClient 4.1.2的编辑

在4.1.2的情况下,当您为post或put操作创建实体时,请在实体上设置内容类型,而不是使用setContentType(String)设置execution (HttpPost或HttpPut)。这一点在4.1.3及以后不再受欢迎。

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

https://stackoverflow.com/questions/14338997

复制
相关文章

相似问题

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