Domanda

Da http://www.faqs.org/rfcs/rfc2822.html:

  

CR e LF DEVONO presentarsi solo insieme come   CRLF; NON DEVONO apparire   indipendentemente nel corpo.

Abbiamo un servizio web che invia e-mail di conferma, ma uno dei nostri utenti ha sottolineato che questo non aderisce allo standard rfc2822. Quindi la mia domanda è: perché è importante che CR e LF compaiano insieme nei messaggi di posta elettronica?

È stato utile?

Soluzione

Perché nell'e-mail CRLF è il separatore di riga. Se usi solo CR o usi solo LF, avrai tutti i tipi di problemi imprevisti con vari client, combinazione di server SMTP. Alcuni server rifiuteranno le tue e-mail, altri & Quot; fix & Quot; le tue email. Le e-mail fisse sono tra le più divertenti da affrontare.

Altri suggerimenti

Perché è nella RFC accettata?

Le implementazioni derivano da RFC. Se così non fosse, non vi sarebbe alcuna garanzia di interoperabilità tra diverse implementazioni. Potrebbero esserci o meno ragioni tangibili e tecniche per richiedere che appaiano insieme, ma in questo caso tali ragioni sono irrilevanti. È una semplice questione di & Quot; perché lo hanno detto. & Quot;

Pensa in termini di vecchio teletipo. CR riporta la testina di scrittura all'inizio della riga, LF fa rotolare la carta di una riga in avanti. Sono necessari entrambi i passaggi per iniziare una nuova linea. Se usi CR senza LF, sovrascriverai lo stesso testo, che è ovviamente illegale.

Comunque, questa è la ragione storica per definire CR + LF come codice ASCII per una nuova linea. Naturalmente alla fine si tratta solo di codici arbitrari. Alcuni sistemi usano solo CR per indicare una nuova linea, altri usano solo LF, altri usano un carattere completamente diverso. RFC2822 ha dovuto sceglierne uno e ha deciso di consentire solo la sequenza CRLF.

Poiché la RFC ha deciso di utilizzare CRLF, ha senso rifiutare separatamente CR o LF, dal momento che sarebbe comunque inutile e problematico da gestire.

Se non ti ritrovi con un CR, che ti mette sulla stessa riga, allora qualunque cosa tu scriva sarebbe in cima ai caratteri a sinistra sulla stessa riga, allora arriva l'LF e sei in una colonna verso al centro e ricominciare a scrivere. Disordinato.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top