Имя: Пароль:
1C
1С v8
Получение файлов с сайта
0 frostixxx
 
25.02.16
14:11
Всем доброго времени суток. Подскажите кто знает, есть задача загружать с сайта заказы, сайт в данном случаев банальный обменник без логинов паролей, т.е. представляет из себя набор каталогов в которых хранятся файлики. Суть такая на определенную дату есть каталог, внутри есть несколько файлов xml с заказами. Как из 1С получить все файлы внутри каталога, имея адрес страницы каталога на сайте и не имея названий файлов(метод КопироватьФайл() не прокатывает, из-за того, что неизвестны наименования файлов)?
1 ObjectRelation Model
 
25.02.16
14:12
кури FTPСоединение
2 ДенисЧ
 
25.02.16
14:13
А кто тебе сказал, что хттп-сервер обязан тебе отдать весь список файлов?
3 Поpyчик-4
 
25.02.16
14:52
FTPСоединение ещё не предлагали?

(0) А ещё бывает, когда прямой доступ к файлам на сервере может быть закрыт в .htaccess, то есть с помощью http-запроса выдернуть что либо нельзя.
4 frostixxx
 
25.02.16
14:59
(3) Метод КопироватьФайл() отрабатывает на ура. Но, как я уже писал конечные имена файлов заранее не известны. Разбираюсь с ftp.
5 mehfk
 
25.02.16
15:11
НайтиФайлы()
6 Patriot1C
 
25.02.16
15:12
HttpСоединение = Новый HTTPСоединение( "caйт",,,,,5);
HttpЗапрос = Новый HTTPЗапрос("/Директория/имяфайла");
мОтвет = HttpСоединение.Получить(HttpЗапрос);
Если мОтвет.КодСостояния = 200 Тогда
    СтрокаДанных = мОтвет.ПолучитьТелоКакСтроку();
7 Garykom
 
гуру
25.02.16
15:14
(2) ломануть же можно
8 frostixxx
 
25.02.16
15:16
(6) Вся проблема в том, что нет параметра "имяфайла" нужно закачать все что есть в "/Директория/".
9 Garykom
 
гуру
25.02.16
15:18
(8) нужно сначала сделать некий скриптик на php к примеру
т.е. получаем 'имясервера/имяскрипта.php?dir="имякаталога"'
а оно выдает имена файлов в запрошенном через GET скажем каталоге
10 Patriot1C
 
25.02.16
15:19
(8) У тебя еще должны быть права на просмотр содержимого директории, а это в интернете плохой тон.
Лучше договориться о наименовании файлов заранее по шаблону...
11 frostixxx
 
25.02.16
15:38
Сделали через ftp :) Всем спасибо
Ошибка? Это не ошибка, это системная функция.