Имя: Пароль:
1C
 
Я.CRM или Яндекс.Доставка - никто не пользовался ?
0 lamme
 
06.03.20
15:18
Коллеги.
Никто не интегрировал к себе эту вещь ?
Нужен всего ничего - блок по вызову такси и второй блок  - это запрос на отслеживание состояния заказа.
---
Апи тут
https://yandex.ru/dev/taxi/doc/dg/concepts/api-about-docpage/
1 lamme
 
06.03.20
15:24
ну или помогите разобраться
2 lamme
 
06.03.20
15:24
Описание такое
3 lamme
 
06.03.20
15:24
Синтаксис запроса
POST /client/{идентификатор клиента}/order/{идентификатор заказа}/processing
Заголовки запроса:
Authorization
OAuth-токен. Процесс получения токена описан в разделе Начало работы
Описание полей ответа
В ответе могут содержаться следующие поля:
Поле Описание Формат
_id Идентификационный номер заказа. Строка
API Яндекс.Такси для бизнеса. Руководство разработчика
Запросы к сервису 20
Поле Описание Формат
status Блок статуса заказа. Объект
simple Упрощенный статус заказа. Строка
full Подробный статус заказа. Строка
description Описание состояния заказа. Строка
Пример запроса
POST https://business.taxi.yandex.ru/api/1.0/client/a2...d09/order/3c...b05e/processing
...
Authorization: <OAuth-токен>
Пример ответа
Пример ответа на данный запрос выглядит следующим образом:
{
"_id": "3caa3587675b49deb62e3286b753b05e",
"status": {
"simple": "active",
"full": "search",
"description": "Такси приедет через N мин."
4 lamme
 
06.03.20
15:27
Делаю запрос


Соединение = Новый HTTPСоединение("business.taxi.yandex.ru",,,,,,Новый ЗащищенноеСоединениеOpenSSL);
    Заголовки = Новый Соответствие;
    Заголовки["Content-Type"] = "application/json";
    Заголовки["Authorization"] = Токен;
    Заголовки["Content-type"] ="application/x-www-form-urlencoded";
  
    Запрос = Новый HTTPЗапрос("/api/1.0/client/"+client+"2/order/"+orderid+"/processing", Заголовки);
    Запись = Новый ЗаписьJSON;

    
        ИмяФайлаТела = ПолучитьИмяВременногоФайла("json");

        Запись.ОткрытьФайл(ИмяФайлаТела);  
    
    
    Данные = Новый Структура;
    Данные.Вставить("format", "json");
    Данные.Вставить("cost_center",id);
    Данные.Вставить("order",id);

    ЗаписатьJSON(Запись, Данные, Новый НастройкиСериализацииJSON);
    Запись.Закрыть();
    

        
        
    Запрос.УстановитьИмяФайлаТела(ИмяФайлаТела);

    РезультатИмяФайла = ПолучитьИмяВременногоФайла("txt");
    Запрос.УстановитьИмяФайлаТела(ИмяФайлаТела);
    
    Ответ = Соединение.ВызватьHTTPМетод("POST", Запрос);


и облом  (
5 pechkin
 
06.03.20
15:29
ты контенет тайп перезатираешь
6 lamme
 
06.03.20
15:31
пробовал то один
то другой
по одному

без разницы
7 pechkin
 
06.03.20
15:36
а что отвечает?
8 pechkin
 
06.03.20
15:37
и жисон наверно с бом передаешь
9 lamme
 
06.03.20
15:38
ошибка: Client not found. Код ошибки:GENERAL
10 lamme
 
06.03.20
15:38
(8)
не понял
11 lamme
 
06.03.20
15:39
код состояния 404
12 lamme
 
06.03.20
15:43
авторизацию не проходит
13 lamme
 
06.03.20
15:44
Пример запроса
PUT https://business.taxi.yandex.ru/api/1.0/client/a2...d09/order/a3...b386/change
...
Authorization: <OAuth-токен>
{ "cost_center": "some cost center" }


Вот это как на язык 1С переложить правильно ?
14 pechkin
 
06.03.20
15:46
попробуй не через файл, а через строку
15 lamme
 
06.03.20
15:47
например ?
16 lamme
 
06.03.20
15:51
17 lamme
 
06.03.20
15:51
(13) - не тот запрос.

(16) - тот что надо
18 lamme
 
06.03.20
15:57
Соединение = Новый HTTPСоединение("business.taxi.yandex.ru",,,,,,Новый ЗащищенноеСоединениеOpenSSL);
    Заголовки = Новый Соответствие;
    Заголовки["Authorization"] = Токен;

  
    Запрос = Новый HTTPЗапрос("/api/1.0/client/"+clienid+"2/order/"+id+"/processing", Заголовки);

  Ответ = Соединение.ВызватьHTTPМетод("POST", Запрос);
19 lamme
 
06.03.20
16:06
хех
поставил заглушку и забыл про нее
есть
Запрос = Новый HTTPЗапрос("/api/1.0/client/"+clienid+"2/order/"+id+"/processing", Заголовки);
надо
Запрос = Новый HTTPЗапрос("/api/1.0/client/"+clienid+"/order/"+id+"/processing", Заголовки);

если искать лень то
заглушка была
"2/order/"
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший