什么是在HTTP协议中使用的实体?

时间:2013-12-18 09:34:22

标签: http entity

现在我知道了what's an http entity。但实体用于什么?

我的意思是,当应用程序操作http请求或响应时,它只需要知道如何解析消息头和消息体。那么一个实体的角色是什么?它们的结构几乎相似。

1 个答案:

答案 0 :(得分:0)

我真的不明白你想问的是什么?

如果你的意思是我们可以跳过使用HttpEntity作为回应和请求吗?答案是不! 它必须遵循它的惯例,即互联网如何运作!

从apache文档中引用实体:

  

由于实体可以表示二进制和字符内容,因此   支持字符编码(支持后者,即。   人物内容)。

     

当请求成功并且习惯时,会创建实体   阅读回复。

     

要从实体中读取内容,您可以检索输入   通过HttpEntity.getContent()方法流,返回一个   InputStream,或者你可以提供输出流   HttpEntity.writeTo(OutputStream)方法,它将全部返回   内容已写入给定的流。

     

当作为响应的结果收到实体时,方法   getContentType()和getContentLength()方法用于读取   公共标题内容类型和内容长度分别(如果它们   可用)。由于Content-Type标头可以包含一个字符   编码文本mime类型,如text / plain或text / html,   getContentEncoding()方法用于读取此信息。如果   标头不可用,将返回-1的长度,并且为NULL   对于内容类型。如果Content-Type标头可用,则a   将返回[Header]对象。

     

为请求创建实体时,必须使用此元数据   由该实体的创建者提供。

     

使用getHeaders()读取响应中的其他标头   响应对象中的方法。

来源:http://wiki.apache.org/HttpComponents/HttpEntity

如果我的问题没有得到解决,我再次感到抱歉,但希望无论如何都会有所帮助。