簡體   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