Задать вопрос
Frotie
@Frotie

Как составить POST запрос с массивом данных?

Добрый день! Нужно создать post запрос на сервер из программы. Запрос должен содержать помимо строк, еще и массив данных. Пример: id: 1, name: "Иван", data: { age: 18, surname: "Иванов", ... }. Хотел узнать, как выглядит тело такого post запроса.
  • Вопрос задан
  • 2277 просмотров
Подписаться 1 Средний 1 комментарий
Пригласить эксперта
Ответы на вопрос 3
edward_freedom
@edward_freedom
$url = $file_name;

//The data you want to send via POST
$fields = [
    '__VIEWSTATE '      => $state,
    '__EVENTVALIDATION' => $valid,
    'btnSubmit'         => 'Submit'
];

//url-ify the data for the POST
$fields_string = http_build_query($fields);

//open connection
$ch = curl_init();

//set the url, number of POST vars, POST data
curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch,CURLOPT_POST, count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS, $fields_string);

//So that curl_exec returns the contents of the cURL; rather than echoing it
curl_setopt($ch,CURLOPT_RETURNTRANSFER, true); 

//execute post
$result = curl_exec($ch);
echo $result;
Ответ написан
Комментировать
@marsdenden
Все просто. На любом языке формируете http запрос с указанием, что передаете json (Content-type: application/json) и в теле запроса передаете сам json, а у ж там что хотите - хоть массив, хоть объект. Для экспериментов можно использовать Postman, чтобы формировать запросы и Telerik Fiddler для изучения анатомии запросов и ответов.
Ответ написан
Комментировать
Frotie
@Frotie Автор вопроса
Нет, это чуточку не то, что нужно, мне нужно совершить данный запрос не из сайта на сайт, а из программы на сайт, и чтобы его реализовать, я должен увидеть сам файл POST запроса (каким образом в нем передаются данные)
Ответ написан
Ваш ответ на вопрос

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

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