Максимальная длина символа в теме API Gmail? - PullRequest
1 голос
/ 31 марта 2020

Похоже, что большинство почтовых клиентов ограничивают строку темы до 255 макс. Символов. Я пытаюсь сохранить тему в БД Postgres, и непредсказуемая длина строки поля темы приводит к появлению гаечного ключа в моей схеме.

1 Ответ

1 голос
/ 01 апреля 2020

Связь по электронной почте следует RF C 2822 . В его декларации вы можете прочитать:

Существуют два ограничения, которые этот стандарт устанавливает для количества символов в строке. Каждая строка символов ДОЛЖНА быть не более 998 символов и ДОЛЖНА быть не более 78 символов, исключая CRLF.

Это ограничивает тему не более 998 символов *, как позволяет Gmail. В вашем случае вы можете сохранить только первые 78 символов, поскольку большинство писем не пересекают этот порог. В качестве альтернативы вы можете сохранить все 998 символов.

В обоих случаях можно управлять, задав для столбца тип данных VARCHAR() любой длины, которую вы хотите сохранить. Этот формат автоматически обрезает каждый предмет до выбранной длины. Если вы планируете сохранить тему целиком, вы можете выбрать тип данных TEXT (описанный также в предыдущей ссылке); он сохранит полную строку.

Имейте в виду, что оба эти метода имеют верхний предел 1 ГБ данных и, как указано в документации, они не имеют различий в производительности. Я надеюсь, что помог вам, но не стесняйтесь спрашивать в комментарии, если вам нужны дальнейшие указания.

* На самом деле вы можете построить более длинный предмет, развернув его в две или более строки (каждая длиной 998 символов). как максимум), но многие почтовые провайдеры, включая Gmail, не поддерживают эту опцию, поэтому она не применима к нашему сценарию здесь.

...