Имя: Пароль:
1C
1С v8
API Яндекс Диск
0 Boudybuilder
 
05.05.13
16:22
Вот заинтересовала задача подключения к Яндекс Диск.

С переводчиком яндекс разобрался , делаю так :

Запрос = "https://translate.yandex.net/api/v1.5/tr/translate?key="+api_key+"&lang="+"en"+"-"+"ru"+"&text="+ЭлементыФормы.СтрокаВвода.Значение;

   Попытка
       XMLHttp = ПолучитьCOMОбъект("", "Microsoft.XMLHTTP");
   Исключение
       Возврат;
   КонецПопытки;

   
   Попытка
       XMLHttp.Open("GET", Запрос, Ложь);
   Исключение
       Ошибка = ОписаниеОшибки();
       Возврат ;
   КонецПопытки;
                                                     
   XMLHttp.Send();


А Диску каким образом запросы кидать не пойму.
http://api.yandex.ru/disk/doc/dg/concepts/quickstart.xml

API Яндекс.Диска доступен по адресу https://webdav.yandex.ru. Соединение должно производиться по протоколу HTTPS (порт 443).

Напишите пожалуйста пример... Ато я тут не силен...
1 Мизантроп
 
05.05.13
16:25
из какой операционной системы пытаешься?
2 Boudybuilder
 
05.05.13
16:28
Windows 7
3 Boudybuilder
 
05.05.13
16:30
Смотрел в документацию 1С, ничего не нашел для себя понятного.  
Какие методы присутсвуют в 1С 8.2 для подключения к API ?
Хотел бы в этом поподробнее разобраться ,так как на будущее яндекс маркет мне надо будет . А парсить - это не дело...
4 Boudybuilder
 
05.05.13
16:32
Логин  = Base64Значение("Логин");
   Пароль = Base64Значение("Пароль");
   
   ЯДиск = Новый HTTPСоединение ("webdav.yandex.ru","443",,,,Истина);
   ИмяФайла = ПолучитьИмяВременногоФайла();
   ЯДдиск.Получить("PROPFIND / HTTP/1.1
   |Host: webdav.yandex.ru
   |Accept: */*
   |Depth: 0
   |Authorization: Basic "+Логин+":"+Пароль,ИмяФайла);

Пробовал так . Выдает ошибку аутентификации что ли
5 ASV
 
05.05.13
16:37
Логин  = Base64Значение("Логин:пароль");
а так?
6 Boudybuilder
 
05.05.13
16:47
ЯДиск = Новый HTTPСоединение ("webdav.yandex.ru","443",,,,Истина);
   ИмяФайла = ПолучитьИмяВременногоФайла();
   ЯДиск.Получить("PROPFIND / HTTP/1.1
   |Host: webdav.yandex.ru
   |Accept: */*
   |Depth: 0
   |Authorization: Basic "+ЛогинПароль,ИмяФайла);


Всеравно!




Ошибка при вызове метода контекста (Получить)
   ЯДиск.Получить("PROPFIND / HTTP/1.1
по причине:
Ошибка аутентификации при доступе к ресурсу:  PROPFIND / HTTP/1.1
Host: webdav.yandex.ru
Accept: */*
Depth: 0
Authorization: Basic
7 zak555
 
05.05.13
16:51
я там даже базу нулёвую за 20 минут развернул =)
8 Boudybuilder
 
05.05.13
16:59
(7) Та ты шо...!!!
9 Boudybuilder
 
05.05.13
21:41
Так что в этом коде не так?

ЯДиск = Новый HTTPСоединение ("webdav.yandex.ru","443",,,,Истина);
   ИмяФайла = ПолучитьИмяВременногоФайла();
   ЯДиск.Получить("PROPFIND / HTTP/1.1
   |Host: webdav.yandex.ru
   |Accept: */*
   |Depth: 0
   |Authorization: Basic "+ЛогинПароль,ИмяФайла);
10 Лодырь
 
05.05.13
21:50
А почему у тебя глубина 0 а не 1?
11 Boudybuilder
 
05.05.13
22:00
Base64Значение("Пароль")
Мне это что то не нравится. возвращает пустое значение моего пароля
12 Boudybuilder
 
05.05.13
22:00
13 Boudybuilder
 
05.05.13
23:50
Народ , выручайте!
На форуме 1000 чел , и некому помочь?!
14 Krendel
 
05.05.13
23:53
(13) Там половину ботов ;-)
15 Boudybuilder
 
06.05.13
00:24
Вот даный пример описан в документации Яндекс Диска АРI:

Запрос свободного и занятого места
Чтобы узнать, сколько места занято на Диске, и сколько осталось свободного, отправьте запрос PROPFIND в любом каталоге, указав соответствующие свойства в теле запроса:
quota-available-bytes — свободное место;
quota-used-bytes — занятое место.
Пример
Приложение запрашивает объем свободного и занятого места:
PROPFIND / HTTP/1.1
Host: webdav.yandex.ru
Accept: */*
Depth: 0
Authorization: OAuth 0c4181a7c2cf4521964a72ff57a34a07

<D:propfind xmlns:D="DAV:">
 <D:prop>
   <D:quota-available-bytes/>
   <D:quota-used-bytes/>
 </D:prop>
</D:propfind>




Каким образом мне этот запрос выполнить в 1С.

Наведите пожалуйста пример кода.
16 ASV
 
06.05.13
03:24
(11) Base64Строка
17 cw014
 
06.05.13
08:23
(16) +100500 пока пофигуратор и СП открывал - уже опередил меня
18 stix2010
 
06.05.13
09:33
net use не предлагать?