Как разместить с помощью curl? - PullRequest
0 голосов
/ 26 июня 2019

Я тестирую, используя curl для публикации. я создал 3 php файла "приложение, источник, результат". Первый PHP приложение для публикации. Второй источник. третье, чтобы обработать почтовую стоимость. Как отправить из приложения в source.php и получить результат, php. Я ничего не получаю.

первый php

$data = [ 'user' => 'myself' ];
$headers = [
"User-Agent: Opera/9.80 (J2ME/MIDP; Opera Mini/4.0.10992/35.5561; U; hr) Presto/2.8.119 Version/11.10",
 "Content-Type: application/x-www-form-urlencoded",
];

$options = [
CURLOPT_POST => TRUE,
CURLOPT_POSTFIELDS => $data,
CURLOPT_HTTPHEADER => $headers
];

$ch = curl_init("localhost/source.php');
curl_setopt_array($ch, $options);
$res = curl_exec($ch);
curl_close($ch);
echo $res;

Источник php

<form action="result.php" method="post">
<input type="hidden" name="user">
</form>

Результат php

<?php
if(isset($_POST['user'])){ echo $_POST['user']; }
?>

1 Ответ

1 голос
/ 26 июня 2019

При отправке данных с помощью запроса POST или PUT используются два общих формата (указанных в заголовке Content-Type):

application / json application / x-www-form-urlencoded Многие API принимают обаформатов, поэтому, если вы используете curl в командной строке, может быть немного проще использовать формат urlencoded вместо json, потому что

формат json требует кучу дополнительных кавычек, curl отправит форму urlencodedпо умолчанию, поэтому для json заголовок Content-Type должен быть задан явно. В этой сущности приведены примеры использования обоих форматов, в том числе как использовать образцы файлов данных в любом формате с вашими запросами curl.

использование curl Для отправки данныхс запросами POST и PUT это общие параметры curl:

тип запроса

-X POST -X PUT заголовок типа содержимого

-H "Content-Type: application /x-www-form-urlencoded "

-H" Тип содержимого: application / json "

data

Форма urlencoded: -d" param1 = value1¶m2 =значение2 "или-d @ data.txt json: -d '{"key1": "value1", "key2": "value2"}' или -d @ data.json Примеры POST application / x-www-form-urlencoded application / x-www-form-urlencoded является значением по умолчанию:

curl -d "param1 = value1¶m2 = value2" -X POST http://localhost:3000/data явно:

curl -d "param1= value1¶m2 = value2 "-H" Content-Type: application / x-www-form-urlencoded "-X POST http://localhost:3000/data с файлом данных

curl -d" @data.txt "-X POST http://localhost:3000/data Приложение POST / json curl -d '{" key1 ":" value1 "," key2 ":" value2 "}' -H" Тип содержимого: application / json "-XPOST http://localhost:3000/data с файлом данных

curl -d "@ data.json" -X POST http://localhost:3000/data

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...