Я использую партнерский 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"
}
Я хотел бы знать, нужно ли мне что-то еще сделать, чтобы успешно подключиться к службе. Спасибо.
Он будет содержать ответ после того, как команда 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, например той, к которой я пытался подключиться.