Como obtén o correo a través do protocolo de oficina de correos funciona

A Behind the Scenes Mira a obtención de correo a través do protocolo de Office

O protocolo de oficina de correos (POP) usado para recuperar correo desde un servidor remoto é un protocolo moi sinxelo. Define a funcionalidade básica dun xeito sinxelo e é fácil de implementar. Por suposto, tamén é fácil de entender.

Descubra o que sucede nas escenas cando o programa de correo electrónico obtén correo nunha conta POP. En primeiro lugar, ten que conectarse ao servidor.

Ola, é Me

Normalmente, o servidor POP escoita o porto 110 para conexións entrantes. Tras a conexión dun cliente POP (o seu programa de correo electrónico), esperamos que responda con + OK pop.philo.org listo ou algo similar. O botón + OK indica que todo está â € "Aceptar. O seu equivalente negativo é -ERR , o que significa que algo fallou. Quizais o seu cliente de correo electrónico xa te mostre unha destas respostas negativas do servidor.

Iniciar sesión

Agora que nos saudou o servidor, necesitamos iniciar sesión usando o noso nome de usuario (supoñamos que o nome de usuario é "pelotón"; o que di o servidor está impreso en cursiva):

+ OK pop.philo.org listo
PLATÓN DE USUARIO

Xa que un usuario con este nome existe, o servidor POP responde con + Aceptar e quizais un gibberish que realmente non nos importe. Se non houbese tal usuario no servidor, por suposto, poñeríase pánico con -ERR usuario descoñecido .

Para completar a autenticación tamén necesitamos dar o noso contrasinal. Isto faise co comando "pasar":

+ Aceptar enviar o seu contrasinal
pasar noplato

Se escribimos correctamente o contrasinal, o servidor responde con + contrasinal grande ou calquera que fose o programador do servidor POP. A parte importante nuevamente é a opción + OK . Desafortunadamente, os contrasinais tamén poden estar errados. O servidor sinala isto cun nome de usuario e contrasinal de terras secos non coincide (como se usase o seu nome de usuario como o seu contrasinal).

Se todo foi correcto, con todo, estamos conectados ao servidor e sabemos quen somos, así estamos preparados para mirar o correo recén chegado.

Recibiu correo.

Despois de ter rexistrado con éxito na nosa conta POP no servidor, primeiro queremos saber se hai correo novo e posiblemente canto.

O comando usado para recuperar estas estatísticas de caixa de correo básicas é STAT .

A posible resposta do servidor sería + OK 18 67042 . Neste caso, importa o que segue o sinal de + OK . A continuación móstrase o número de mensaxes na caixa de correo, despois, separadas por un espazo en branco, vén o tamaño da caixa de correo en octetos (un octeto é de 8 bits).

STAT
+ Aceptar 18 67042

Se non hai correo, o servidor responde con + Aceptar 0 0 . Dado que hai 18 novas mensaxes no servidor, non obstante, podemos listalos mediante o comando LIST . En resposta, o servidor lista as mensaxes no seguinte formato:

LISTA
+ Aceptar 18 mensaxes (67042 octetos)
1 2552
2 3297
...
18 3270
.

As mensaxes están listadas unha a unha, seguidas polo seu tamaño en octetos. A lista remata cun período nunha liña por si só.

O comando LIST pode levar o número dunha mensaxe como argumento opcional, LISTA 2 por exemplo. A resposta do servidor a esta solicitude sería + OK 2 3297 , o número da mensaxe seguido polo tamaño da mensaxe. Se tenta listar unha mensaxe que non existe, como LIST 23 , o servidor non amosa imaxinación e di: -ERR non existe esa mensaxe .

The Big Retrieve (e borrar)

Agora que sabemos cantas mensaxes están na nosa conta e o grande que son, finalmente é hora de recuperalas para que poidamos lerlas tamén.

Agora, despois de descubrir se temos un correo novo, vén o real. As mensaxes son recuperadas un por un co seu número de mensaxe como argumento para o comando RETR .

O servidor responde cun + Aceptar ea mensaxe tal como está, en varias liñas. A mensaxe termina por un período nunha liña por si só. Por exemplo:

RETR 1
+ Aceptar 2552 octetos
Blah! O servidor POP envía aquí a mensaxe
.

Se intentamos obter unha mensaxe que non existe, obtemos -ERR non existe esa mensaxe .

Agora podemos borrar a mensaxe usando o comando DELE . (Podemos, por suposto, tamén eliminar a mensaxe sen ter recuperado se é un deses días).

É bo saber que o servidor non borrará a mensaxe de inmediato. Está meramente marcado para borrar. A exclusión real só se acontece regularmente a conexión co servidor. Polo tanto, non se perderá ningún correo electrónico se a conexión morre de súpeto, por exemplo.

A resposta do servidor ao comando DELE é a mensaxe de + Aceptar borrada :

DELE 1
A mensaxe de Aceptar 1 eliminouse

Se é realmente un deses días e marcamos unha mensaxe de borrado que non queremos eliminar, é posible cancelar todas as mensaxes resetando as marcas de eliminación. O comando RSET devolve a caixa de correo ao estado en que estaba antes de iniciar sesión.

O servidor responde cun + OK e posibelmente o número de mensaxes:

RSET
+ Aceptar 18 mensaxes

Despois de recuperar e eliminar todas as mensaxes, é hora de despedirse usando o comando QUIT . Isto purgará as mensaxes marcadas para borrar e pechar a conexión. O servidor responde con + Aceptar e unha mensaxe de despedida:

QUIT
+ OK bye, bye

É posible que o servidor non puidese eliminar unha mensaxe. Entón responderá cun erro como -ERR a mensaxe 2 que non se eliminou .