Возникла задача отправлять email напрямую из программы.
По мимо просто текста прикреплять файл лога к письму.
Решил использовать сторонний шлюз и через API выполнять указанную задачу.
С отправкой просто текста(небольших объёмов текста) проблем нет, а вот процедуру вложения не могу осилить.
В доках к API написано:
Если при отправке планируется передача каких-либо файлов, то их необходимо передавать методом POST в теле http-запроса к серверу.
Итого пришел к такому:
WebRequest link = WebRequest.Create(server);
link.Method = "POST";
link.Headers.Add("login",cfg.sms_router_user);
link.Headers.Add("psw", cfg.sms_router_pwd);
link.Headers.Add("phones", cfg.sms_router_email);
link.Headers.Add("mes", mes);
link.Headers.Add("sender", CALBACK_EMAIL);
link.Headers.Add("subj",subj);
link.Headers.Add("mail","1");
link.Timeout = 100000;
link.ContentType = "multipart/form-data";
FileStream file = new FileStream(path_file,FileMode.Open,FileAccess.ReadWrite);
byte[] rData = new byte[file.Length];
file.Read(rData,0,rData.Length);
link.ContentLength = rData.Length;
Stream sendTR = link.GetRequestStream();
sendTR.Write(rData,0,rData.Length);
sendTR.Close();
По итогу получаю ошибку "неверные параметры". Может я не верно понял слова передавать в теле) наставьте на путь истинный .
Если не прикреплять файл, то отправка письма проходит GET запросом
send.php?login=<login>&psw=<password>&phones=<phones>&mes=<message>&sender=<sender>&subj=<subj>&mail=1
Я так понял что через метод POST тоже нужно указывать эти параметры и плюс файл вложения в теле POST запроса
Виртуальный выделенный сервер (VDS) становится отличным выбором
Как выгрузить данные из databasebak в базу данных? Иcпользую ASP
Хотелось бы сократить время "вникания" в новый проект на 500+ классовЕсть ли какая то возможность в Unity, или просто в проекте Visual Studio, наглядно...
В БД tсть поле product_description, в котором содержится описание товара в текстовом форматеНо попадаются и внешние ссылки, которые надо удалить из описания