PHP | Ошибка при отправке JSON POST на URL API

FireBird

Я пытаюсь отправить JSON на URL-адрес API. Я отправляю json от test.phpи получаю данные от api.php. Я хочу записать данные в текстовый файл, но ничего не регистрируется, я предполагаю, что $ data возвращает null? В моем test.phpфайле он продолжает возвращать «Sent BAD, request terminated». Что я делаю не так? Как мне это исправить?

test.php

<?php

$ch = curl_init();

$array = array('foo' => 'bar');

curl_setopt($ch, CURLOPT_URL,"https://dropchat.net/api.php");
curl_setopt($ch, CURLOPT_POST, 1);

curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($array));

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$server_output = curl_exec($ch);

curl_close ($ch);

if ($server_output == "OK") { 
    echo "Sent OK";
} else { 
    echo "Sent BAD, request terminated.";
}

?>

api.php

<?php

$data = json_decode(file_get_contents('php://input'), true);

$fp = fopen("myText.txt","wb");
fwrite($fp, $data);
fclose($fp);

?>
Barmar

Добавьте проверку ошибок, api.phpчтобы знать, что произошло.

Вы не можете записать массив в файл, вы можете записать только строку. Итак, напишите fooэлемент массива.

<?php
$data = json_decode(file_get_contents('php://input'), true);
if ($data === null) {
    echo json_last_error_msg();
} else {
    file_put_contents("myText.txt", $data['foo']);
    echo "OK";
?>

Затем измените вызывающего абонента, чтобы распечатать сообщение об ошибке:

$server_output = curl_exec($ch);

curl_close ($ch);

if ($server_output == "OK") { 
    echo "Sent OK";
} else { 
    echo "Sent BAD, reason: $server_output";
}

Эта статья взята из Интернета, укажите источник при перепечатке.

Если есть какие-либо нарушения, пожалуйста, свяжитесь с[email protected] Удалить.

Отредактировано в
0

я говорю два предложения

0обзор
Войти в системуУчаствуйте в комментариях

Статьи по теме

POST JSON в API и получение данных с помощью PHP

Пользовательский ответ API PHP Json от Post Man

Отправка запроса JSON POST в REST API в PHP

Как проверить php API в браузере, передав значения в URL-адресе, если я использую метод POST в API?

PHP _POST['field'] is empty when using API url

Как преобразовать многомерный массив PHP в Json, чтобы он работал как запрос Json POST?

Разбор строки JSON, вложенной в запрос POST с URL-кодом формы

POST json на другой URL

Данные PHP cURL post не отправляются на целевой URL

Не удается получить параметры URL-адреса в запросе POST php

PHP API возвращает URL с дополнительными "/" в URL

Проверка схемы JSON при выполнении запроса POST и чтении данных POST, введенных пользователем с использованием API весенней загрузки rest

Karate API - Как параметризовать под запросом Json post

Как обнаружить повторяющиеся ключи в запросе Web Api Post Json

Ошибка отправки json в POST в службу веб-API

Как передать данные JSON POST в метод Web API как объект?

Контроллер API не может прочитать Json из тела POST

Как передать несколько записей в методе POST REST API с использованием тела JSON

Ошибка при попытке отправить объект JSON POST в тесте API

Вызов JSON Api с "POST"

POST в REST API - JSON не может сериализовать мои данные

Библиотека запросов для отправки json для API Post

Использование Guzzle для получения API через (POST), невозможно передать параметры JSON для запроса

Использовать api в формах xamarin [POST] - сериализация возвращает пустой объект json

Метод POST на веб-сайте api получает нулевой json

Как правильно настроить метод в Web Api для JSON Post?

Получение объекта JSON из API с помощью POST

URL синтаксического анализа JSON с декодированием PHP JSON

Как обрабатывать оператор выбора PHP API POST с условием IN?

TOP список

  1. 1

    Распределение Рэлея Curve_fit на Python

  2. 2

    How to click an array of links in puppeteer?

  3. 3

    (fields.E300) Поле определяет связь с моделью, которая либо не установлена, либо является абстрактной.

  4. 4

    Modbus Python Schneider PM5300

  5. 5

    Elasticsearch - Нечеткий поиск не дает предложения

  6. 6

    Как добавить Swagger в веб-API с поддержкой OData, работающий на ASP.NET Core 3.1

  7. 7

    TypeError: store.getState não é uma função. (Em 'store.getState ()', 'store.getState' é indefinido, como posso resolver esse problema?

  8. 8

    Перебирайте несколько столбцов в фрейме данных Panda и находите уникальные значения подсчета

  9. 9

    Проблемы со сборкой Python Image Registration Toolkit

  10. 10

    В типе Observable <unknown> отсутствуют следующие свойства из типа Promise <any>.

  11. 11

    Vue js CLI 2 импортирует и использует плагин javascript

  12. 12

    Автозаполнение с Java, Redis, Elastic Search, Монго

  13. 13

    Текущая ветка не настроена для извлечения В конфигурации не найдено значение для ключа branch.master.merge

  14. 14

    SQL Вычтите две строки друг от друга в одном столбце, чтобы получить результат

  15. 15

    How to normalize different curves drawn with geom = "step" when using stat_summary

  16. 16

    Merging legends in plotly subplot

  17. 17

    ViewPager2 мигает / перезагружается при смахивании

  18. 18

    Vue 2 / Vue CLI 3: создание асинхронных однофайловых компонентов

  19. 19

    как я могу удалить vue cli 2?

  20. 20

    Ошибка «LINK: фатальная ошибка LNK1123: сбой при преобразовании в COFF: файл недействителен или поврежден» после установки Visual Studio 2012 Release Preview

  21. 21

    Single legend for Plotly subplot for line plots created from two data frames in R

популярныйтег

файл