在InputStreamEntity中设置HTTP标头

时间:2013-05-31 15:57:36

标签: java http-headers inputstream apache-httpclient-4.x

我正在使用InputStreamEntity;我正在从文件输入流中读取数据并将其发送到远程服务器;一切似乎都很好。

现在,我希望能够在输入流完成之前设置一个标题,即只要我读取最后一个字节,我就想设置标题。 见下面的示例代码 -

代码是 -

   long ctr = 0; int ch;
        while ((ch = inputStream.read()) >= 0) {

            if (lastByte) { //lastByte is set if this will be the only byte left in inputStream
                httpPut.addHeader("hello", "there");
            }
        }

但是上面的代码没有设置标题。

我使用Wireshark验证了标头尚未发送,所以我相信仍有机会设置它们。

请建议一种方法来处理此要求。谢谢!

1 个答案:

答案 0 :(得分:1)

我不相信你能做到这一点。构造请求“消息”并将其发送到服务器的方式将首先构建/发送标头,然后输入流将用作消息的BODY。尝试在写入正文后设置标题将不起作用。