ale-lit / http-parser

Учебный проект - работа с REST API и cURL

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Учебный проект для закрепления полученных знаний на курсе PHP в SkillBox


Что нужно сделать:

Реализуйте замену ссылок в тексте, отправленном через HTML-форму, а также со стороны HTML страницы.

  1. Создайте файл HtmlProcessor.php. В этом файле будет имплементирована обработка запроса методом POST в формате JSON.

  2. Чтобы определить метод запроса в HtmlProcessor.php, используйте значение $_SERVER['REQUEST_METHOD']. Для получения тела запроса — в нём будет передаваться текст, помещенный в объект JSON, — используйте $_POST или file_get_contents('php://input').

  3. Получив текст, выполните замену всех тегов со ссылками на текст самих ссылок.

  4. Когда преобразование будет выполнено, создайте JSON объект с полем formatted_text, присвойте ему преобразованный текст и отправьте в ответе.

  5. В случае, если на входе вы получили пустой текст, отправьте пустой ответ с кодом 500. Код ответа можно указать с помощью функции http_response_code.

  6. В заголовке ответа также укажите Content-Type: application/json.

  7. Реализуйте HTML-форму для загрузки текста со сторонней HTML-страницы и передачи его в HtmlProcessor.php. Для этого создайте отдельный файл html_import_processor.php и опишите в нём HTML-форму с текстовым полем ввода URL-адреса страницы, с которой будет копироваться контент. Метод формы — POST, action — сам файл html_import_processor.php.

  8. После кода формы реализуйте серверную логику на PHP (отделите PHP-код тегами .

  9. Чтобы получить контент страницы по URL, используйте cURL. Для инициализации cURL используйте функцию curl_init. Страницу будем загружать с помощью HTTP метода GET. Простой пример использования cURL можно посмотреть на https://www.php.net/manual/ru/curl.examples-basic.php.

  10. Получив текст, положите его в объект JSON (например, в поле raw_text). Чтобы создать из массива или объекта текст формата JSON, используйте функцию json_encode.

  11. С помощью cURL отправьте JSON в HtmlProcessor.php. Для этого перед curl_exec добавьте два вызова:

    • curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    • curl_setopt($ch, CURLOPT_POSTFIELDS, $json).

    Где json — это JSON.

  12. Получите результат curl_exec, и, в случае успешной обработки текста, выведите его в браузер. А в случае ошибки (код 500) — сообщите об ошибке.

About

Учебный проект - работа с REST API и cURL


Languages

Language:PHP 100.0%