Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

Sending email using gmail smtp server

192  
  moose старожил18.12.17 22:41
18.12.17 22:41 

проблема в том, что если после того, как посылаю "DATA" и получаю 354 Go ahead... сразу посылаю CRLF.CRLF, то сообщение уходит и я получаю 250 2.0.0 OK... уходит пустым, естественно.

если хочу хотя бы "Subject: blablabla \r\n" отправить, после отправления CRLF.CRLF сервер молчит. соединение рвет не сразу, но ждет чего-то. в чем может быть причина?


#1 
Murr патриот19.12.17 15:36
Murr
NEW 19.12.17 15:36 
в ответ moose 18.12.17 22:41

в чем может быть причина?

-----

Заголовок сообщения отделяется от тела сообщения одной пустой строкой. ну или заголовок отделяется CRLFCRLF

(без точки)

CRLF.CRLF - это уже после тела сообщения.

#2 
  moose старожил19.12.17 15:54
NEW 19.12.17 15:54 
в ответ Murr 19.12.17 15:36, Последний раз изменено 19.12.17 15:58 (moose)

зачем вы выдумываете? читаем https://tools.ietf.org/html/rfc821, нет там ничего об отделении чего-то одной пустой строкой.

вот вам примеры из документа:

S: DATA
R: 354 Start mail input; end with .
S: Blah blah blah...
S: ...etc. etc. etc.
S: .
R: 250 OK


S: DATA
R: 354 Start mail input; end with <CRLF>.<CRLF>
S: Date: 2 Nov 81 22:33:44
S: From: John Q. Public <JQP@MIT-AI.ARPA>
S: Subject: The Next Meeting of the Board
S: To: Jones@BBN-Vax.ARPA
S:
S: Bill:
S: The next meeting of the board of directors will be
S: on Tuesday.
S: John.
S: .
R: 250 OK

S: QUIT
R: 221 USC-ISIE.ARPA Service closing transmission channel

если сервер замечает какую-то каку, он отвечает соотв. сообщением. а если он молчит, значит, он ожидает посылки "конца данных".


#3 
NightWatch коренной житель19.12.17 16:56
NightWatch
NEW 19.12.17 16:56 
в ответ moose 19.12.17 15:54
нет там ничего об отделении чего-то одной пустой строкой.

S: DATA
R: 354 Start mail input; end with .
S: Date: 2 Nov 81 22:33:44
S: From: John Q. Public
S: Subject: The Next Meeting of the Board
S: To: Jones@BBN-Vax.ARPA
S: <------------------------------------------------------------------------------- А это что?

S: Bill:
S: The next meeting of the board of directors will be
S: on Tuesday.
S: John.
S: .
R: 250 OK


S: QUIT
R: 221 USC-ISIE.ARPA Service closing transmission channel

#4 
Murr патриот19.12.17 17:26
Murr
NEW 19.12.17 17:26 
в ответ moose 19.12.17 15:54

Ох, Мышонок...

Ты спросил - Почему? - и Я тебе объяснил именно ЭТО...

Чтобы понять - читай RFC 2822, RFC 5322 & etc...


вот вам примеры из документа:

...
S: To: Jones@BBN-Vax.ARPA
[red]S: [/red]
S: Bill:
...

------

???


а если он молчит, значит, он ожидает посылки "конца данных".

-----

Ну и чего же он у тебя ожидает после документированного CRLF.CRLF? смущ


#5 
  moose старожил19.12.17 18:54
NEW 19.12.17 18:54 
в ответ NightWatch 19.12.17 16:56

мы не об заголовках говорим, это просто животному сказать было нечего, он и сказал, что он, ему кажется, откуда-то знает (манера у него такая).

если у вас есть доступ к какому-нибудь смтп серверу, понимающему открытый текст, зайдите туда на порт 25 и "поговрите", отправив имэйл вообще без заголовка, только блаблабла какое-нибудь, затем завершите данные \r\n.\r\n, как положено, и имэйл спокойно уйдет. в нем не будет ни сабжа, ни когда создан, ни прочего, но сервер его отправит. по крайней мере он поймает конец данных, заголовки и прочее - это не относится к smtp протоколу непосредственно. если серверу что-то не понравится, он ответит каким-нибудь кодом, но раз он молчит, он не понимает, что данные закончились.

#6 
  moose старожил19.12.17 19:27
NEW 19.12.17 19:27 
в ответ moose 19.12.17 18:54, Последний раз изменено 19.12.17 19:29 (moose)

все, нашел! точнее, добрые люди помогли. не здесь, на этот раз в другом месте : )

#7 
AlexNek патриот19.12.17 21:36
AlexNek
NEW 19.12.17 21:36 
в ответ moose 19.12.17 19:27

так и в чём была проблема?

#8 
NightWatch коренной житель19.12.17 21:43
NightWatch
NEW 19.12.17 21:43 
в ответ AlexNek 19.12.17 21:36

Предположу, что проблема была в том, что осталось за кадром, когда ТС описывал ситуацию.

#9 
Murr патриот19.12.17 22:10
Murr
NEW 19.12.17 22:10 
в ответ NightWatch 19.12.17 21:43

Там нет ничего за кадром.

Есть

- заголовки

- пустая строка

- тело

если заголовки не используются - пустая строка не нужна.

тело сообщения может быть пустым, но после заголовка должна быть пустая строка.


По крайней мере так в SMTP на GMail.

Аутентификация юзера там более замученная, но не формат сообщений...

#10 
  moose старожил19.12.17 23:59
NEW 19.12.17 23:59 
в ответ AlexNek 19.12.17 21:36, Последний раз изменено 20.12.17 00:00 (moose)

букварь нужно читать внимательнее : )

но мне простительно, я только несколько дней в луа теме...

а то, что говорил и продолжает нести говняный кот - полная чушь (как всегда, впрочим...)

#11