API AliExpress SDK выдает ошибку «Подпись запроса не соответствует стандартам платформы» при вызове службы aliexpress.affiliate.productdetail.get

Я использую партнерский API AliExpress в сочетании с официальным SDK AliExpress, чтобы подключиться к сервису aliexpress.affiliate.productdetail.get (ссылка на документацию ), который представляет собой не более чем запрос GET.

Как указано в ссылке, мне удалось получить access_token. Сейчас я пытаюсь подключиться к сервису aliexpress.affiliate.productdetail.get, но получаю следующую ошибку:

{ "type": "ISV", "code": "IncompleteSignature", "message": "The подпись запроса не соответствует стандартам платформы", "request_id": "123456789" }

Действия по исправлению ошибки


Я действительно знаю, что означает ошибка ISV, то есть код бизнес-ошибки, но эта ошибка не имеет смысла, поскольку я использую действительный access_token и очень внимательно следую инструкциям API. Я пробовал использовать разные новые access_token, пытаясь избежать использования токенов с истекшим сроком действия, однако, похоже, ничего не работает, снова и снова выдавая одно и то же сообщение об ошибке.

PHP-фрагмент для подключения к сервису


<?php

$aliExpressPath = 'aliexpress.affiliate.productdetail.get';
$this->iopClient = new IopClient($this->getEndPointUrl(), $this->getAppKey(), $this->getAppSecret());
$request = new IopRequest($aliExpressPath);

$request->addApiParam('access_token', $this->getAccessToken());
$request->addApiParam('product_ids', '1005006454556640,1005006591162504');
$response =  $this->iopClient->execute($request, $this->getAccessToken());

?>

Примечание. Я использую правильные клавиши, такие как App Secret, App Key и Access Token (я знаю, что они работают нормально, потому что я могу создавать новые токены).

Ожидаемые результаты


Что касается основного функционала сервиса, я ожидаю получения информации о продуктах IDS, указанной в запросе (1005006454556640 и 1005006591162504). Например, я ожидаю чего-то вроде следующего:

{
  "code": "0",
  "resp_result": {
    "result": {
      "current_record_count": "200",
      "products": [
        {
          "app_sale_price": "300",
          "original_price": "300",
          "product_detail_url": "https://www.aliexpress.com/item/33006951782.html",
          "product_small_image_urls": [],
          "second_level_category_name": "Women\u0027s Clothing",
          "target_sale_price": "320.2",
          "second_level_category_id": "333333",
          "discount": "50%",
          "product_main_image_url": "https://ae01.alicdn.com/kf/HTB1tyl7bELrK1Rjy0Fjq6zYXFXaC/Spring-Autumn-mother-daughter-dress-matching-family-outfits-mother-kids-dress-matching-outfits-flamingo-embroidery-1.jpg",
          "first_level_category_id": "1111",
          "target_sale_price_currency": "USD",
          "target_app_sale_price_currency": "USD",
          "original_price_currency": "USD",
          "platform_product_type": "ALL",
          "shop_url": "https://www.aliexpress.com/store/3255036",
          "target_original_price_currency": "USD",
          "product_id": "33006951782",
          "target_original_price": "360.5",
          "product_video_url": "https://ae01.alicdn.com/kf/HTB1tyl7bELrK1Rjy0Fjq6zYXFXaC/Spring-Autumn-mother-daughter-dress-matching-family-outfits-mother-kids-dress-matching-outfits-flamingo-embroidery-1.jpg",
          "first_level_category_name": "dress",
          "promotion_link": "http://s.click.aliexpress.com/e/xxxxx",
          "evaluate_rate": "89.22%",
          "sale_price": "15.9",
          "product_title": "Spring Autumn mother daughter dress matching family outfits mother kids dress matching outfits flamingo embroidery 1 to 11 yrs",
          "hot_product_commission_rate": "60%",
          "shop_id": "111111",
          "app_sale_price_currency": "USD",
          "sale_price_currency": "USD",
          "lastest_volume": "300",
          "target_app_sale_price": "330.3",
          "commission_rate": "3.5%",
          "promo_code_info": {
            "code_campaigntype": "1",
            "code_availabletime_end": "2020-04-30 23:59:59",
            "code_quantity": "1",
            "code_availabletime_start": "2020-04-01 00:00:00",
            "code_value": "On order over USD 10, get USD 7 off",
            "promo_code": "GMG20207",
            "code_mini_spend": "1",
            "code_promotionurl": "https://s.click.aliexpress.com/e/_xxxxx"
          },
          "relevant_market_commission_rate": "10%"
        }
      ]
    },
    "resp_code": "200",
    "resp_msg": "success"
  },
  "request_id": "0ba2887315178178017221014"
}

Я хотел бы знать, нужно ли мне что-то еще сделать, чтобы успешно подключиться к службе. Спасибо.

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
0
166
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Он будет содержать ответ после того, как команда Aliexpress ответит на открытый мной билет...

извини, что не смог ответить на твой вопрос

Ответ принят как подходящий

Я решил проблему с изменением конечной точки: я использовал конечную точку системных интерфейсов вместо бизнес-интерфейсов.

Согласно документам AliExpress:

Системные интерфейсы: API-интерфейсы авторизации в разделе «Системный инструмент» документация по API (https://api-sg.aliexpress.com/sync?method = {api_path}&{query}).

Бизнес-интерфейсы: все остальные API, за исключением системных API, которые упоминаются. выше (https://api-sg.aliexpress.com/rest{api_path}?{query}).

Заключение

Я использовал неправильную конечную точку (системные интерфейсы вместо бизнес-интерфейсов). Конечная точка системных интерфейсов используется только для авторизации (службы, которые создают токены или обновляют их). Конечная точка бизнес-интерфейсов используется для остальных служб API, например той, к которой я пытался подключиться.

Другие вопросы по теме