繁体   English   中英

是否有一个剥离HTTP响应头的函数?

[英]Is there a function that strips HTTP response headers?

HttpResponse.getEntity()。getContent()返回所有内容 ......包括响应头,javascript代码,响应主体(当然!)等。

是否有一个功能可以清除它并提供响应体

您必须将InputStream中的数据读取到缓冲区。 搜索此正则表达式:

\r\n\r\n(.*)

这将为您提供标题后的内容。

或者你可以用空字符串替换它,如果你正在搜索:

^.*?\r\n\r\n

您可以使用自己的方法使用Android过滤出模式。 传入字符串,并应用模式过滤器来删除您不想要的内容。

public String filter(String searchString)
    {
        String content = searchString;
        // Remove the new line characters.
        Pattern newLineChar = Pattern.compile("\n+");
        Matcher mLine = newLineChar.matcher(content);
        while (mLine.find())
            content = mLine.replaceAll("");
        // Return the clean content
        return content;
    }

你可以使你的模式变得非常复杂,并过滤掉你想要的任何表达。 (您可能需要使用正则表达式等)。 上面的示例用0长度字符串替换新行(\\ n),以从字符串中删除所有这些行。 您可以构建模式,也可以再次迭代以删除其他内容。

您还需要一些导入才能实现此目的:

import java.util.regex.Matcher;
import java.util.regex.Pattern;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM