Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di l'anna
    Registrato dal
    Aug 2008
    Messaggi
    103

    Server in java, img src non visualizzata

    Ciao!
    Ho creato un minimissimo server http con le socket java,
    come digito sul browser "localhost:8080/index.html" il server spedisce il file html al client locale, sempre localhost ih!
    Nell'header includo css ,a href='Stile.css' , e me lo riconosce, lo carica, ma se indico una immagine, <img src='Head.png'/>, non la vedo poi anche se in java "file.exists".

    Se apro l'html direttamente col client, invece la immagine la vedo:
    mi potete aiutare, non ne esco!
    Grazie!!!

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254
    Quote Originariamente inviata da l'anna Visualizza il messaggio
    Ho creato un minimissimo server http con le socket java,
    come digito sul browser "localhost:8080/index.html" il server spedisce il file html al client locale, sempre localhost ih!
    Nell'header includo css ,a href='Stile.css' , e me lo riconosce, lo carica, ma se indico una immagine, <img src='Head.png'/>, non la vedo poi anche se in java "file.exists".
    Innanzitutto realizzare "da zero" un server http direttamente a livello dei socket è parecchio critico/complesso, perché richiederebbe una ottima conoscenza dei dettagli del protocollo HTTP. E finché si tratta di qualcosa di "didattico" e senza troppe pretese .... allora ok, possiamo anche starci.

    Comunque hai detto ben poco e senza vedere il codice .... potrei solo tirare ad indovinare. Ci sono troppi aspetti particolari che potresti aver sbagliato. Non hai nemmeno precisato se il tuo server è "concorrente" (multi-thread) o se è "iterativo".
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  3. #3
    Utente di HTML.it L'avatar di l'anna
    Registrato dal
    Aug 2008
    Messaggi
    103
    Grazie! Sissi didattico, solo per capire come funziona a basso livello, solo per curiosità, è semplicissimo, monothread.

    Legge la prima linea dal client da cui prende il nome della risorsa richiesta, ne cerca il file e lo invia
    private void sendFileBody(OutputStream out, BufferedInputStream bufInput, long lung) throws Exception{
    byte[] mybytearray = new byte[(int)lung];
    bufInput.read(mybytearray, 0, mybytearray.length);
    out.write(mybytearray, 0, mybytearray.length);
    }

    il file può essere html, css, immagine...forse è perché non ho specificato nella risposta il Content-type?


  4. #4
    Utente di HTML.it L'avatar di l'anna
    Registrato dal
    Aug 2008
    Messaggi
    103
    sisssì!!!
    E' perché, proprio per capire il funzionamento, non avevo ancora inserito l'header ma solo la riga vuota prima del body perché vedevo che funzionava comunque...ma finché ho solo file html o css!
    Con le immagini evidentemente no!
    Ho aggiunto status line e content type, e va!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.