Bild an Client schicken mit com.sun.net.httpserver

Hallo,

da hast aber anscheinend nicht nach dem richtigen gesucht ;)
Im Buch "Java ist auch eine Insel" gibt es ein Kapitel über den Webserver. Da wird auch am Ende des Kapitels gezeigt, wie man den "Content-Type" ändern kann.

Quelle: http://openbook.galileocomputing.de/javainsel8/javainsel_18_010.htm
Entsprechender Ausschnitt:

Java:
class DateHandler implements HttpHandler 
{ 
  public void handle( HttpExchange httpExchange ) throws IOException 
  { 
    httpExchange.getResponseHeaders().add( "Content-type", "text/html" ); 
    String response = "<b>" + new Date() + "</b> for " + 
                      httpExchange.getRequestURI(); 
    httpExchange.sendResponseHeaders( 200, response.length() ); 
 
    OutputStream os = httpExchange.getResponseBody(); 
    os.write( response.getBytes() ); 
    os.close(); 
  } 
}

Die für dich Interessanten Methoden sind in Zeile 5 und 8.

Gruß
BK
 
Zuletzt bearbeitet:
Hi,

naja, wenn du dir den OutputStream holst (Zeile 10), dann kannst du mit dem eh über die write()-Methode ein byte[] rausschicken. (Zeile 11)
In dem Beispiel ist es halt "nur" ein String (Zeile 6 + 7), aber du kannst eigentlich fast alles da raus schicken.
Das heißt also, dass du deine Datei zuerst einlesen musst, und dann über die obige write()-Methode weiterschicken kannst.

Gruß
BK
 
Die Lösung nicht zu posten ist nicht der Informationsfindung förderlich. Die ganze Frage nach der Klärung zu löschen ist schlicht unhöflich.
 
Zurück