@Sergey768628

Как отправить данные через POST?

Вот сюда нужно отправить https://amanat.ru/api/v1/doc/

Я вот так отправляю, там написано должен быть ответ, никакого ответа нет, $result пустой, может я что не так делаю? У них техподдержка уже два дня молчит, там в общем тяжёлый случай.
<?php
$products_json = '{
	"token": "demo-bmLBmwvoaIDRQbVuykEHpOX6fEg14T",
	"data": [
		{
			"product_id": "131",
			"title": "Кофеварка",
			"desc": "апвапва вап вап вап ",
			"price": "10000",
			"image_1": "https://elbit.ru//upload/iblock/bf2/1yb4p2csmjp6n9q2fnh2ueb4ujac2x00.jpeg",
			"brand": "ываыва",
			"color": "бежевый",
			"category": "8",
		}
	]
}';

$result = file_get_contents('https://amanat.ru/api/v1/uploadProducts', null, stream_context_create(array(
            'http' => array(
                'method' => 'POST',
                    'header' => array(
                        "Content-Type: application/json; charset=utf-8\r\n" .
                        "Content-Length: " . strlen($products_json) . "\r\n" .
                        "Host: amanat.ru"
                    ),
                'content' => $products_json
            )
        )
    )
);
 
header('Content-Type: application/json; charset=UTF-8');
echo $result;
?>


После передачи товаров, API выдаст нескольковариантов ответа:

Unauthorized - ошибка токена.
Error: no data - отсутствует ключ data или он пуст.
Success - успешная выгрузка. При наличии товаров, выгрузка которых не удалась, эти товары будут отображены.
  • Вопрос задан
  • 126 просмотров
Решения вопроса 1
@rPman
"category": "8",
попробуй убрать запятую тут, это не считается валидным json, например php json_decode его не распознает
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Captain
@Captain
file_get_contents вообще далеко не всегда вообще работает как хочется. я бы использовал cURL как более настраиваемую библиотеку.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы