{
"id": "4a59a50e-904a-674d-2553-8954ec4a841d",
"name": "JSON API",
"description": "",
"order": [
"155ae062-f839-ef5a-6c40-61e821202984"
],
"folders": [],
"folders_order": [],
"timestamp": 1522932542555,
"owner": 0,
"public": false,
"requests": [
{
"id": "155ae062-f839-ef5a-6c40-61e821202984",
"headers": "Authorization: Basic OTE5MTAwMTkxY2OjEyMzQ1Ng==\n",
"headerData": [
{
"key": "Authorization",
"value": "Basic OTE5MTAwMTkxNjY2OyMzQ1Ng= = ",
"description": "",
"enabled": true
}
],
"url": "https://apiurl.in/bez/api/v1/documents/upload?disableSms=false",
"queryParams": [
{
"key": "disableSms",
"value": "false",
"equals": true,
"description": "",
"enabled": true
}
],
"preRequestScript": null,
"pathVariables": {},
"pathVariableData": [],
"method": "POST",
"data": [
{
"key": "jsonData",
"value": "{\"phoneNumber\":\"9999999999\",\"merchantId\":\"1122112211\",\"amount\":100,\"billDate\":1514891788753,\"gender\":\"male\",\"ageGroup\":\"21-30\",\"dateOfBirth\":\"12-dec-1989\",\"email\":\"[email protected]\",\"address\":\"dfg\"}",
"description": "Required fileds\n\"phoneNumber\",\"merchantId\",\"amount\",\"billDate\"\noptional fileds\n\"gender\",\"ageGroup\",\"dateOfBirth\",\"email\",\"address\"",
"type": "text",
"enabled": true
},
{
"key": "file",
"value": "",
"description": "",
"type": "file",
"enabled": true
}
],
"dataMode": "params",
"tests": null,
"currentHelper": "basicAuth",
"helperAttributes": {
"id": "basic",
"username": "0101010101",
"password": "30303030",
"saveToRequest": true
},
"time": 1514892082233,
"name": "Bill Uploading",
"description": "",
"collectionId": "4a59a50e-904a-674d-2553-8954ec4a841d",
"responses": [],
"collection_id": "4a59a50e-904a-674d-2553-8954ec4a841d"
}
]
}
Выше код находится в файле JSON. Мне нужно использовать код из файла PHP.
Код ниже находится на PHP. Я не знаю, как сделать POST-запрос через PHP.
public function sendSmsApi($array)
{
$data = array();
$data['apikey'] = Configuration::get('Sendin_Api_Key');
$data['to'] = $array['to'];
$data['sender'] = Configuration::get('sender_id');
$data['message'] = $array['text'];
$data['type'] = 'xml';
return Tools::jsonDecode($this->curlRequest($data));
}
Как включить данные JSON в PHP и сделать запрос POST к URL-адресу API. Код PHP фактически отправляет сообщение клиентам. Я хочу включить код JSON в файл PHP для отправки запроса POST на URL-адрес API.
Guzzle - популярный HTTP-клиент: github.com/guzzle/guzzle
Думаю, это Tools::jsonEncode






Вы можете прочитать JSON-файл с помощью file_get_contents (), а затем преобразовать строку в массив PHP с помощью json_decode ().
$json_string = file_get_contents ('data.json');
$json_array = json_decode ($json_string, true);
Согласно описанию, упомянутому в вышеупомянутом вопросе, в качестве решения попробуйте выполнить следующий фрагмент кода php для отправки данных json, содержащихся в файле json, в качестве тела запроса HTTP POST Request.
<?php
$url = 'http://example.com/get-post.php';
$request_params=file_get_contents('test.json');//test.json contains json data
$headers = array();
$headers[] = 'Content-Type: application/json';
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch,CURLOPT_POST, 1);
curl_setopt($ch,CURLOPT_POSTFIELDS, $request_params);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
//execute post
$result = curl_exec($ch) or exit(curl_error($ch));
//close connection
curl_close($ch);
?>
Но я получаю такие параметры, как номер мобильного телефона, количество через PHP. Итак, как я могу передать эти значения в файл JSON.
Вы можете закодировать параметры в строку json с помощью функции json_encode (), а затем передать эту строку json в качестве тела запроса POST-запроса.
Вы можете отправить сообщение с
CURL, чтобы я напечатал все это для вас, я предлагаю поискать в Google несколько руководств по нему.