2013-07-05 3 views
0

Я создаю свой первый API. Мне нужно создать, изменить, получить и удалить два типа вещей: пользователей, собак (например). Собаки зависят от пользователей. Итак:Создание REST API

  • GET "/ пользователей/12/собаки" (получить список собак пользователя # 12)
  • GET "/ пользователей/12/Собаки/2" (получить собаку № 2 пользователя # 12)
  • уДАЛЕНИЯ "/ пользователей/12" (удалить пользователя # 12)
  • POST "/ пользователей/12/собаки" (создать новую собаку для пользователя # 12)

и т.д ..

Я не знаю, что делать на бэкэнде. Я собираюсь сделать REST API на простой PHP (или используя Laravel). Насколько я понимаю, мне нужно сделать файл (например api.php) и послушать там запросы, сделать что-то с db и вернуть ответ на интерфейс. Но если я называю «/ users/12/dogs» с запросом GET, как мой сервер должен знать, что эти данные для API. Путем файла API является «/api.php», но я называю «/ users/12/dogs», как этот запрос перенаправляется на «api.php»? Или как это должно работать?

Второй вопрос: сколько файлов API должно быть у меня? Хорошо ли разместить все запросы для запросов API (для «/ users /» и «users/1/dogs/12») в одном файле,

Конечно, перед тем, как задать этот вопрос, я просмотрел его и прочитал об этом. Существует много информации о четырех основных запросах, о URL-адресах, о «простых REST API», об общей реализации REST API. Но нигде о деталях реализации.

Ответьте на мои вопросы, пожалуйста, или дайте ссылки на хорошее подробное описание реализации REST API на PHP.

+1

Честно? Какой магический ответ вы ожидаете? Это такой большой, открытый вопрос, это непостижимо. Вы беспокоились о том, что Google «создает REST API с PHP»? Должны быть сотни статей и учебных пособий, показывающих, что у вас есть. –

+0

Я ожидал таких ответов, как ваш. Но, по крайней мере, на вопрос, «как этот запрос перенаправляется на« api.php », можно ответить в ближайшее время. –

+0

Нет «перенаправления на api.php». API подобен веб-сайту, но ответы возвращаются как строки JSON или XML, а не HTML-представления, и чаще взаимодействуют с программными средствами, чем с веб-браузером. –

ответ

7

вы можете попробовать использовать тонкую структуру (http://www.slimframework.com/)

  1. это делается с помощью URL переписывания (mod_rewrite в Apache)
  2. вы можете использовать столько файлов, сколько вам нравится или просто 1
+0

Мне очень жаль, я промахнулся и случайно проигнорировал ваш ответ. Я не могу отменить это, пока вы не внесете некоторые незначительные изменения в свой пост. Если вы что-то отредактируете, я прямо изменю свое голосование. Еще раз извините! – benjiman

+0

Я отредактировал его –

+0

upvoted, извините еще раз! – benjiman

1

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

Существуют различные рамки PHP, которые могут вам помочь: просто взгляните на Slim, Recess или FRAPI, например.

В вашем случае я бы пошел с Slim Framework, который представляет собой микро-фреймворк php, который поможет вам быстро написать простые веб-приложения RESTful и API. Он предоставляет вам все основные функции, необходимые для разработки API RESTful (т. Е. Маршрутизации, шаблонов).

Я сделал небольшое примерное приложение, используя Slim Framework некоторое время назад. Вы можете найти код на GitHub here. Это может помочь вам приступить к работе.

+0

Спасибо. Я попробую Slim –

Смежные вопросы