Я пытаюсь отправить запрос POST в API для создания пользователя с помощью PHP cURL. Вот пример кода
<?php
$email="[email protected]";
$name = "jas";
$data = array(
"user" => array("email"=>$email,"name"=>$name)
);
//encoding to json format
$jsondata= json_encode($data);
$credentials = "username:pass";
$header[] = "Content-Type: application/json";
$header[] = "Authorization: Basic " . base64_encode($credentials);
$connection = curl_init();
curl_setopt($connection, CURLOPT_RETURNTRANSFER, true);
curl_setopt($connection, CURLOPT_HTTPHEADER, $header);
curl_setopt($connection, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($connection, CURLOPT_HEADER, false);
//POSTS
curl_setopt($connection, CURLOPT_POST, 1);
curl_setopt($connection, CURLOPT_POSTFIELDS, $jsondata);
curl_setopt($connection, CURLOPT_VERBOSE, 1);curl_setopt($connection, CURLOPT_URL, "http://domain.freshdesk.com/contacts.json");
$response = curl_exec($connection);
?>
Похоже, что это не отправка сообщения на самом деле, хотя я установил
curl_setopt($connection, CURLOPT_POST, 1);
curl_setopt($connection, CURLOPT_POSTFIELDS, $jsondata);
Я вижу GET-запрос на вкладке firebug net.
Это действительно почтовый запрос? Поскольку операция с отступом (создание нового пользователя) не выполняется, она перечисляет всех пользователей, поскольку это запрос GET.
Тот GET
запрос просто ваш запрос PHP
скрипт, который затем выполняет POST
запрос.
Вы не можете видеть запросы, сделанные с помощью cURL, в консоли разработчика, поскольку они были отправлены с сервера, а не с клиента.
Ошибка в логике использования firebug для отладки этого запроса.
Вы отправляете запрос GET на свой сервер / страницу create-user.php. В свою очередь, этот скрипт / сервер отправляет запрос POST на сайт API. Ваш веб-клиент (браузер) и, следовательно, firebug, не «знают» эту вторую часть, которая происходит на вашем сервере.
Чтобы увидеть фактический запрос POST, вы должны использовать различные инструменты. Например, укажите запрос POST на свой компьютер, а затем подтвердите в журнале сервера, что был входящий запрос POST.