|
ОтправитьДляОбработки не передает файл | ☑ | ||
---|---|---|---|---|
0
kabv
08.09.18
✎
13:14
|
Здравствуйте!
Код: ИмяФайлаОтправки = ПолучитьИмяВременногоФайла("txt"); ИмяФайлаДанных = "D:\temp\license.txt"; Boundary = СтрЗаменить(Строка(Новый УникальныйИдентификатор()), "-", ""); ФайлДляПередачи = Новый ТекстовыйДокумент; ФайлДляПередачи.Прочитать(ИмяФайлаДанных); ЗаписьТекста = Новый ЗаписьТекста(ИмяФайлаОтправки); ЗаписьТекста.ЗаписатьСтроку("--"+boundary); ЗаписьТекста.ЗаписатьСтроку("Content-Disposition: form-data; name=""datafile""; filename=""stih.txt"""); ЗаписьТекста.ЗаписатьСтроку("Content-Type: text/plain"); ЗаписьТекста.ЗаписатьСтроку(""); ЗаписьТекста.Записать(ФайлДляПередачи.ПолучитьТекст()); ЗаписьТекста.ЗаписатьСтроку(""); // закроем разделитель ЗаписьТекста.ЗаписатьСтроку("--"+boundary+"--"); ЗаписьТекста.Закрыть(); ФайлОтправки = Новый Файл(имяФайлаОтправки); Заголовки = Новый Соответствие(); //Заголовки.Вставить("User-Agent", "Other"); Заголовки.Вставить("Content-Type", "multipart/form-data, boundary="+boundary); Заголовки.Вставить("Content-Lenght", ФайлОтправки.Размер()); СерверПриемник = "igor.mageon.ru"; //Без протокола . Естественно, следует указать свой адрес. Порт = "80"; //Это общепринятый порт. Возможно, для вашего сервера применяется другой. Конкретное значение уточните у хостера. //ИспользоватьПрокси - какая-то логическая переменная, может быть значение флажка на форме или переключатель ИспользоватьПрокси = Ложь; Если ИспользоватьПрокси Тогда Прокси = Новый ИнтернетПрокси; Прокси.НеИспользоватьПроксиДляЛокальныхАдресов = Истина; Прокси.Пароль = "ПарольПрокси"; // укажите своё значение Прокси.Пользователь = "ПользовательПрокси"; // укажите своё значение НТТР = Новый HTTPСоединение(СерверПриемник, Порт, , , Прокси); Иначе НТТР = Новый HTTPСоединение(СерверПриемник, Порт); КонецЕсли; АдресСкрипта = "index1.php"; //Без протокола и имени домена. Естественно, следует указать имя своего скрипта. ИмяФайлаОтвета = КаталогВременныхФайлов() + "answer.tmp"; имяВыходногоФайла = ПолучитьимяВременногоФайла("txt"); НТТР.ОтправитьДляОбработки(ИмяФайлаОтправки, АдресСкрипта, имяВыходногоФайла, Заголовки); Это содержание файла, который хочу отправить: --f30078224a9648faab7366fcb95162e7 Content-Disposition: form-data; name="datafile"; filename="stih.txt" Content-Type: text/plain This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. --f30078224a9648faab7366fcb95162e7-- На сервере в $assa = $_FILES['datafile']; пусто Почему? |
|||
1
Lamer1C
08.09.18
✎
13:41
|
(0) https://helpf.pro/faq8/view/1298.html тут пример отправки multipart/form-data через 1с. посмотрите
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |