Дмитрий


Дмитрий

  • Дмитрий Дмитрий 22 мая 2021 11:00 #

    Получить характеристики товара и его SKU по API можно этим плагином https://support.webasyst.ru/fo...

    в ответ на Доступ к таблице shop_product_features через shop-script REST api

  • Дмитрий Дмитрий 1 апреля 2021 08:23 #

    Не тестировал, но думаю, что проблема в использовании Axios для соединения с API (в NodeJS приложении).
    Похоже что для передачи application/x-www-form-urlencoded в PHP из Axios со стороны API бэкэнда нужна модификация,  возможное решение здесь https://github.com/axios/axios...

    Если хочется слать через Axios FormData почитайте https://developers.webasyst.ru...
    PHP 7.4

    в ответ на shop.product.skus.add {"error":"server_error"}

  • Дмитрий Дмитрий 1 апреля 2021 08:22 #

    У кого такая же проблема  - shop.product.skus.update  работает нормально. Проблема же была в том, что мое NodeJS приложение использует Axios для соединения с API.

    Судя по всему, между Axios и PHP в вопросе передачи multipart/form-data есть недопонимание: https://github.com/axios/axios... 
    Использование node-fetch решило проблему. 

    Кто хочет слать через Axios application/x-www-form-urlencoded сначала почитайте https://developers.webasyst.ru...
    PHP 7.4


    в ответ на Не работает метод API shop.product.skus.update

  • Дмитрий Дмитрий 21 мая 2020 18:30 #

    Я посылаю POST запросы с "content-type" заголовком "application/x-www-form-urlencoded" или  "multipart/form-data", сервер принимает оба варианта 

    То что в доке по API описано как GET передается в URL, пример для shop.product.skus.add  https://developers.webasyst.com/api/explorer/shop/shop.product.skus.add/

    http://мой.сайт/api.php/shop.product.skus.add?product_id=${productId}&access_token=${this.serverApiKey}


    остальные параметры в зависимости от "content-type" кладутся в body через амперсанд (как в GET) или передаются в bondary, тут описано как: https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/POST

    Примера в PHP у меня нет, тут можно посмотреть некоторые дампы тел запросов примеров https://developers.webasyst.ru/forum/2611/shopproductskusadd-errorserver_error/#comment117442


    shop-script 7.5.1.287

    в ответ на Использование API

  • Дмитрий Дмитрий 18 мая 2020 17:01 #

    shop-script 7.5.1.287

    shop.product.skus.add успешно выполняется, но в добавленном артикуле никакие поля не заполнены. Запрос слал как application/x-www-form-urlencoded и как multipart/form-data оба варианта проходят успешно, но данных в SKU нет, что можно сделать?

    {

    sku: '584298',
    sort: '4',
    name: '20 кг ',
    price: 90,
    primary_price: 90,
    purchase_price: 0,
    compare_price: 0,
    available: '1',
    virtual: '0',
    currency: 'RUB'
    }

    результат

    в ответ на shop.product.skus.add {"error":"server_error"}

  • Дмитрий Дмитрий 18 мая 2020 15:44 #

    Такая же проблема, привет из 2020,  Shop-Script 7.5.1.28

    Другие API запросы выполняются, но вот наткнулся на эти два, которые вызывают сложности.

    1) shop.product.skus.update - как и у топик стартера ошибки не выдает, но и результатов нет. Пытаюсь обновить поля SKU, name, price, передаю как FormData по адресу:  

    //адрес магазина/api.php/shop.product.skus.update?id=6291&access_token=<токен>

    данные

    _streams: [
    '----------------------------349705831470035158997527\r\n' +
    'Content-Disposition: form-data; name="name"\r\n' +
    '\r\n',
    'Бантик',
    [Function: bound ],
    '----------------------------349705831470035158997527\r\n' +
    'Content-Disposition: form-data; name="sku"\r\n' +
    '\r\n',
    '837890',
    [Function: bound ],
    '----------------------------349705831470035158997527\r\n' +
    'Content-Disposition: form-data; name="price"\r\n' +
    '\r\n',
    '55',
    [Function: bound ]
    ],

    2) А может быть удастся удалить старый артикул и добавить новый через shop.product.skus.add ?  нет, тоже не удача - после успешного выполнения shop.product.skus.add в нужном товаре создается пустой артикул с незаполненными полями.

    Что можно ещё сделать кроме установки магазина и отдельного дебага? У кого-то это работает в 7 версии?

    в ответ на Не работает метод API shop.product.skus.update