java Socket o DatagramSocket per la connessione a un server NNTP
Domanda
fieno Ragazzi, voglio scrivere un semplice client NNTP, che può connettersi a un server, inviare i dettagli AUTHINFO, e utilizzare GROUP e il corpo per entrare in un gruppo e prelevare i messaggi.
Ho avuto una discussione con un paio di ragazzi qui e hanno suggerito di utilizzare dataGramSockets e datGramPackets.
Qualcuno potrebbe fornire un semplice script per fare queste spiegando come ogni opera di comando e perché usare Datagram Socket su Socket tradtional? Ho usato Socket ed è stato in grado di connettersi al mio server, ma non avevo la minima idea di come utilizzare getInputStream () e getOutputStream () per inviare / ricevere dati al server.
Qualsiasi aiuto sarebbe grande.
Soluzione
Non è NNTP un protocollo TCP-based? Non credo datagrammi sarebbe opportuno qui. Vedere la RFC per ulteriori informazioni re. utilizzando questo protocollo.
Vedo che Apache Commons Net offerta un pacchetto di NNTP, che può essere utile.
NNTPClient incapsula tutto il funzionalità necessarie per inviare e recuperare articoli da un server NNTP. Come per tutte le classi derivate da SocketClient, è necessario collegare al server con connessione prima di fare qualsiasi cosa, e, infine, Disconnect () dopo sei completamente finito di interagire con il server. Ricordate che l'isAllowedToPost () metodo è definito nella NNTP.
Eviterei utilizzando socket raw se qualcuno ha già fatto questo duro lavoro.