簡體   English   中英

在Java代理服務器中生成HTTP響應

[英]Generate HTTP response in java proxy server

當客戶端嘗試訪問禁止頁面時,如何顯示對客戶端的HTTP 403響應? 我有以下代碼,但在客戶端瀏覽器上未顯示任何內容。 可能是一個微不足道的錯誤,但是我對此並不陌生,所以任何幫助都可以。

                            // If webpage is not allowed, then redirect user to a blocked
            // URL page
            if (!checkHost(fin, requestSplit[3].split("\r")[0])) {
                System.out.println("DON'T SHOW");

                OutputStream to_client = clientSocket.getOutputStream();
                PrintStream ps = new PrintStream(to_client);
                ps.print("HTTP/1.1  403 Forbidden\r\n");
                ps.print("Connection: close\r\n");
                ps.print("\r\n");
                ps.close();
  1. 您應該關閉PrintStream,而不是Socket.
  2. HTTP中的行終止符定義為\\r\\n ,而與平台相關的println()無關。
  3. 在404響應中設置Content-typeDateAccept-Ranges標頭沒有意義。
  4. incomingOS是輸出流的可怕名稱。

您的修改不符合上面的(2)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM