[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как сделать запрос к API ?
vlad-zh
Привет.

Вот простой запрос к API:
http://emspost.ru/api/rest/?method=ems.test.echo

Если его просто скопировать и вставить в браузер, то увидим отклик в формате JSON:
{"rsp":{"stat":"ok","msg":"successeful"}}

Подскажите, как это оформить в виде скрипта index.php ? Я попытался сделать так:
<?php		
$request = 'http://emspost.ru/api/rest/?method=ems.test.echo';
echo $request;
?>

,в итоге увидел в браузере:
"http://emspost.ru/api/rest/?method=ems.test.echo"

т.е. он просто строку текстовую вывел мне и всё ((

Может тут надо использовать форму и передавать методом get ? Ведь вроде в таком случае мы будем использовать массив GET , а в нём как раз хранятся данные из адресной строки браузера. Что-то типа index.php:
<form method="get" action="index.php">
// код
<input type="submit" name="send" value="Получить ответ от API" />
</
form>
<?php
echo $response = $_GET['response'];
?>


Но что-то всё равно не получается. Кто-нибудь может подсказать?
jetistyum
подумай, что ты написал. Ты сделал строковую переменную и воспользовался оператором вывода - Echo . По какой же такой магии должен произойти запрос к серверу ? Еще и ответ вернуться.
смотри в сторону Curl библиотеки.
с помощью CURL ты сможешь сделать запрос, и получить ответ с которым что-либо сможешь сделать.
Ответ придет в json, судя по всему. смотри в сторону json_decode
Invis1ble
GET-запрос можно с помощью простого file_get_contents() сделать

echo file_get_contents('http://emspost.ru/api/rest/?method=ems.test.echo');


но для чего-то посложнее используют cURL обычно.

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

jetistyum
Можно smile.gif но лучше разобраться с CURL библиотекой, чтобы завтра тут не появился топик - а как сделать POST/PUT запрос, да еще и с кастомными заголовками, куками etc
vlad-zh
jetistyum
хорошо, спасибо
пошел читать Curl
killer8080
Цитата (jetistyum @ 25.07.2016 - 23:19)
Можно  но лучше разобраться с CURL библиотекой, чтобы завтра тут не появился топик - а как сделать POST/PUT запрос, да еще и с кастомными заголовками, куками etc

Не всё ли равно какую тему он создаст: "Как работать с file_get_contents" или "Как работать с cURL" ? smile.gif
Из перечисленного у курла плюс только в куках из коробки, все остальное реализуется примерно одинаковым объёмом кода. Учитывая что ему нужно работать с апи, куки ему врядли понадобятся, зато для простых гет запросов file_get_contents проще wink.gif
jetistyum
killer8080
Так не создал же, пошел разбираться, и думаю разберется.
С помощью простого вызова file_get_contents не получится сделать никакой запрос кроме GET, а API, как правило, предполагает работу с разными типами запросов.

Ок, можно работать с f_g_c описывая и создавая контекст. Но тогда зачем уж работать с f_g_c, если более архитектурно-верно будет stream_get_contents, ведь работа идет уже с потоком, а не файлом.

Если разберется и с тем и с тем, будет отличный экспириенс.
Еще можно с сокетами разобраться.

А вообще по хорошему надо использовать psr-7 интерфейс. А библиотеку выбирать на любой вкус.
https://packagist.org/search/?q=psr-7%20implementation


Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.