Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Inserire header in un messaggio via socket

    Salve a tutti,
    come da oggetto desideravo sapere se c'è un modo ( e se si quale o che strada seguire ) per inserire in un messaggio che un client invia ad un server ( via socket ) un header dove specifico il tema del messaggio.
    Mi spiego meglio: il client invia diversi tipi di messaggio al server. Nell header vorrei specificare che tipo di messaggio è ( ad es. per login, per aggiornamento dati etc ) ed in base al contenuto dell header il server decide cosa fare con i dati contenuti un quel messaggio.

    Ho letto in internet che proprio come i protocolli anche i messaggi socket possono includere degli headers... ma non ho trovato come fare!

    Qualcuno può aiutarmi?

    Grazie

  2. #2
    Utente di HTML.it L'avatar di Stoicenko
    Registrato dal
    Feb 2004
    Messaggi
    2,254
    Perchè non usare un tuo protocollo? Tipo metti nei primi byte un codice identificativo del tipo di messaggio?

  3. #3
    Potrebbe essere una soluzione, ma se questo header variasse di lunghezza? Come faccio di volta in volta a sapere quanti byte devo prendere?

  4. #4
    Utente di HTML.it L'avatar di Stoicenko
    Registrato dal
    Feb 2004
    Messaggi
    2,254
    dipende da cosa utilizzi per parsare i messaggi.. per esempio potresti usare dei caratteri speciali riservati per delimitare le varie parti del messaggio..

    es: 001|020|test

    In questo caso il messaggio è diviso in 3 parti che potrebbero essere pure così:

    es: 00012|12564|questo è lungo

    Con lo stesso codice puoi parsare entrambi i messaggi senza sepere a priori la lunghezza di questi..

    Un'altra soluzione più raffinata ma più difficile è far antecedere alle varie parti un intero contenente il numero di caratteri della parte:

    es: 3 001201512345

  5. #5
    E se a questo punto passassi una stringa XML del tipo

    <Messaggio>
    <Header>Inserisco qua il mio header</header>
    <Testo>Inserisco qui il mio testo</testo>
    </Messaggio>


    che ne dici?

  6. #6
    Utente di HTML.it L'avatar di Stoicenko
    Registrato dal
    Feb 2004
    Messaggi
    2,254
    bè più che altro è dispendiosa perchè aggiungi parecchi byte non di messaggio..

  7. #7
    Si è più dispendiosa sicuramente ma mi permetterebbe anche di avere una specie di separazione anche per i campi stessi. Ad esempio in caso di invio username e password:

    <Messaggio>
    <Header>LOGIN</Header>
    <Credenziali>
    <Username>nomeutente</Username>
    <Password>password</Password>
    </Credenziali>
    </Messaggio>


    è molto facile con le funzioni .net per la lettura di un XML Element ricavarne i dati che mi interessano e anche inviare dati con ripetizioni multiple ( ad esempio un set di record trovati ).

    Pensavo anche di crittografare il messaggio prima dell invio. E' possibile anche comprimerlo?

  8. #8
    Utente di HTML.it L'avatar di Stoicenko
    Registrato dal
    Feb 2004
    Messaggi
    2,254
    bè per la complessità devi vedere tu..

    siceramente un messaggio con dei separatori su cui poi fai una split per ricavarne le parti è la cosa meno dispendiosa e più veloce da fare..

    poi va a gusti.. per la crittografia basta usare delle classi (anche quelle del .net)

    per la compressione non saprei.. la cosa si fa abbastanza intricata.. ne vale la pena?

  9. #9
    Se utilizzo l XML mi sa di si... cmq ti ringrazio molto per adesso va bene cosi, ho del materiale su cui lavorare!

    Grazie ancora!

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 © 2025 vBulletin Solutions, Inc. All rights reserved.