Имя: Пароль:
1C
1С v8
HTTPСоединение.Получить() - ошибка доступа к файлу
,
0 Wobland
 
11.08.11
12:02
что-то впервые я сталиваюсь с HTTPСоединением, направьте на путь истинный, плз.
имею ссылку: http://disk.tom.ru/lrza7pn/1/337c2/ccc.txt, хочу получить оттуда файл. говорит, ошибка доступа к файлу. Делаю так:

   Прокси=Новый ИнтернетПрокси;
   Прокси.Пользователь="";
   Прокси.Пароль="";
   Попытка
       http=Новый HTTPСоединение("disk.tom.ru", , , Прокси);
   Исключение
       Сообщить(ОписаниеОшибки());
   КонецПопытки;
   http.Получить("http://disk.tom.ru/lrza7pn/1/337c2/ccc.txt", "c:\ddd.txt");
1 Wobland
 
11.08.11
12:03
путь в Получить() делал и таким: "lrza7pn/1/337c2/ccc.txt", ему без разницы
2 Kuzen
 
11.08.11
12:05
(0) Ну наверное ссылка неверная. В эксплорере открой. У меня получилось через http://disk.tom.ru/lrza7pn/1/8f4b3/ccc.txt?sid=170fa410b99783cdc0c941b832771c88&sid=170fa410b99783cdc0c941b832771c88
3 Wobland
 
11.08.11
12:08
(2) не-а. по ссылке мышью открывается, копипастю в обработку - нет. мож, я где в синтаксисе ошибаюсь? ну там http:// не надо или ещё чего? адрес тренировочный, если что
4 forforumandspam
 
11.08.11
12:22
(3) В (2) правильно говорит.
5 Wobland
 
11.08.11
12:23
(4) делал ж так.. есть подозрение на прокси ещё..
6 forforumandspam
 
11.08.11
12:28
(5) Я запустил твой код - всё заработало с первого раза.

   Прокси=Новый ИнтернетПрокси;
   Прокси.Пользователь="";
   Прокси.Пароль="";
   Попытка
       http=Новый HTTPСоединение("disk.tom.ru", , , Прокси);
   Исключение
       Сообщить(ОписаниеОшибки());
       Возврат;
   КонецПопытки;
   http.Получить("http://disk.tom.ru/lrza7pn/1/8f4b3/ccc.txt?sid=170fa410b99783cdc0c941b832771c88&sid=170fa410b99783cdc0c941b832771c88", "c:\ddd.txt");
7 forforumandspam
 
11.08.11
12:30
Только вот содержимое файла такое:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xht.........
8 Wobland
 
11.08.11
12:32
(6) врёшь, прокси пятым параметром, а не четвёртым, запятой не хватало ;)
(7) аналогично, мучаю дальше
9 forforumandspam
 
11.08.11
12:59
(8) Сам себе врёшь, это твой код.
10 Kuzen
 
11.08.11
13:00
(0) А теперь так http://disk.tom.ru/lrza7pn/1/a6063/ccc.txt
11 Kuzen
 
11.08.11
13:01
Видимо нет постоянной ссылки на файл
12 Wobland
 
11.08.11
13:04
(9) у тебя, видать, прокси нет, поэтому отработало.

уже сечас другой вопрос. используется защищённое соединение. какая-то муть с сертификатами. гугление сказало:
Для того чтобы из 1С 8.1 обращатся к веб-сервисам через защищенный канал (https), нужно чтобы 1С'ка "видела" сертификат сервера, к которому идет обращение.
Для этого нужно сертификат загнать в файл "..\1cv81\bin\cacert.pem"

вопрос: как загнать? с нужной страницы получил сертификат в формате .crt, тупая допись к cacert.pem не помогла, ошибка та же - Ошибка работы с Интернет:  problem with the SSL CA cert (path? access rights?)

(11) я ж говорил, адрес тренировочный, практической ценности не имеет
13 Wobland
 
12.08.11
06:43
ну раз никто не знает, рассказываю. из броузера экспортируется файл *.crt с содержимым вида
-----BEGIN CERTIFICATE-----
<всяка хрень>
-----END CERTIFICATE-----
в "..\1cv81\bin\cacert.pem" находится набор таких же хреней, только с заголовками. тупая копипаста чужого заголовка, замена чужих значений на свои (это я уже через броузер смотрел), потом само тело сертификата. ругаться перестал, даже что-то получает. ну а то, что "The document has moved" по всей видимости не сабжевая проблема ;)
14 zak555
 
12.08.11
07:53
(13) заголовок какой ?
15 Wobland
 
12.08.11
07:55
что-то вроде:
Verisign/RSA Secure Server CA
=============================

MD5 Fingerprint=74:7B:82:03:43:F0:00:9E:6B:B3:EC:47:BF:85:A5:93
Certificate:
   Data:
       Version: 1 (0x0)
       Serial Number:
           02:ad:66:7e:4e:45:fe:5e:57:6f:3c:98:19:5e:dd:c0
и т.д.
16 zak555
 
12.08.11
08:16
> Verisign/RSA Secure Server CA

это ты откуда взял ?
17 Wobland
 
12.08.11
08:21
не совсем понял вопрос. это начало из "..\1cv81\bin\cacert.pem", у тебя такой же должен быть. свои значения брал, рассматривая сертификат в броузере