Нужен ли мне фреймворк для создания REST API на PHP?


Я довольно новичок в PHP (около 8 месяцев). Я создаю веб-приложение, которое почти готово к бета-тестированию. Я только сейчас начинаю думать о том, что мне нужно сделать, чтобы создать мобильную версию приложения.

Как я понимаю, я должен создавать API REST (пожалуйста, поправьте меня, если я ошибаюсь). В настоящее время я НЕ использую PHP-фреймворк для своего веб-приложения. Должен ли я быть таким?

Должен ли я теперь начать использовать фреймворк, чтобы мне было легче реализовать свой API? Или я могу создать свой API вообще без каких-либо рамок?

Author: Mithun Sreedharan, 2012-06-30

6 answers

КРАТКИЙ ОТВЕТ Нет, вам не нужны рамки для достижения вашей цели.

НО это будет действительно проще, если вы будете использовать фреймворк для управления своим API. Я предлагаю вам выбрать легкий фреймворк, и, возможно, вы также сможете легко конвертировать свое веб-приложение в фреймворк, имея одно "приложение" для возврата двух разных "вещей" (веб-материалы и API).

Взгляните на Ларавель, REST API на основе Laravel 4 или список популярных php rest api фреймворки, которые можно использовать для их создания.

 44
Author: Napolux, 2018-10-02 15:44:28

Вам определенно не нужна какая-либо структура для создания PHP REST API. REST - это не что иное, как соглашение о протоколе, построенное поверх HTTP. Поскольку PHP, очевидно, может обрабатывать HTTP-запросы, в нем есть все необходимое для создания RESTful API.

Весь смысл фреймворков заключается в том, чтобы решать общие задачи и вещи, которые в противном случае являются утомительными. API REST обычно создаются с использованием PHP, поэтому существует множество фреймворков. Лично я бы использовал легкий фреймворк, такой как тонкий просто для обработки таких вещей, как маршрутизация URI, анализ/очистка данных запроса и генерация ответов.

 14
Author: Dan Simon, 2012-06-29 21:15:04

Нет, вам не нужна платформа для создания API REST, но это настоятельно рекомендуется, так как хорошо построенная платформа может позаботиться о вещах, которые в противном случае могут быть очень сложными и сложными, а именно о проверке подлинности сеанса и кэшировании и хорошо разделенной архитектуре. Изобретение колеса только заводит вас так далеко.

Я разработчик Wave Framework , который был разработан с учетом ориентированного на API дизайна (подробнее здесь ). Я призываю вас взглянуть на эту структуру и посмотрите, может ли это быть чем-то, что могло бы вам помочь. У него есть небольшая группа разработчиков, но он постепенно завоевывает признание.

Я призываю вас взглянуть на это, и если это может удовлетворить ваши потребности.

 4
Author: kingmaple, 2013-09-18 10:23:13

Существуют также инструменты, которые создают REST api из БД без необходимости в дополнительном коде.

Если вы используете Postgres, есть отличная программа PostgREST, которая

Предоставляет полностью RESTful API из любой существующей базы данных PostgreSQL. Он обеспечивает более чистый, более соответствующий стандартам и более быстрый API, чем вы, вероятно, напишете с нуля.

 3
Author: Alexis Panagiotopoulos, 2016-09-17 05:34:14

REST - это скорее идеология дизайна, чем языковая структура, поэтому вам не нужно использовать какие-либо рамки. Однако нет никакого преимущества в изобретении колеса (конечно, есть некоторые недостатки, такие как безопасность, структура и т.д.).

Если вы хотите избежать хаоса MVC (который не является обязательной спецификацией архитектуры REST), вы можете использовать любой PHP-мико-фреймворк (Slim, Lumen и т. Д.). Они действительно быстры в освоении и реализации и позволяют разработчику PHP писать приложение на основе маршрута (аналогично тем, которые используются в MEAN и Express), что значительно экономит время.

Большинство этих фреймворков также поставляется с MVC, но если вы не хотите предоставлять CMS для API, MR (Model-Routes) достаточно хорош (и практически лучший) для всех остальных потребностей.

С момента появления угловых подобных фреймворков, которые позволяют вашему веб-сайту легко взаимодействовать с sever, как и с любым другим API, я думаю, что даже CMS должна получать доступ к API, как и к любому другому приложению, только с повышенными правами или определенной конечной точкой

 2
Author: Himanshu Vaishnav, 2015-07-15 10:37:16

Мир очень, очень велик, поэтому никто не может делать все в одиночку. Кто-то поможет кому-то (кто делает что-то новое) сделать что-то старое. Это причина, по которой libray и FW существуют в нашем Мире ИТ.

В производственной/живой среде все гораздо сложнее, чем мы думаем. До следующего дня нам нужно будет построить так много вещей для нашего проекта, и мы увидим, что эти вещи были полностью построены FW раньше.

Хотя это просто спокойный сервер с чистым PHP, мы необходимо решить проблемы с: маршрутизацией URI, анализом/очисткой данных запроса, доступом к данным, управлением зависимостями, генерацией ответов, бла-бла-бла...

Я рекомендую использовать Slim или Phalcon (микро-приложение). Slim - это простой и быстрый метод, но Phalcon - эффективный и высокопроизводительный метод.

 1
Author: Deka, 2016-05-26 08:22:58