Drupal как бэкэнд для RESTful API?

есть ли хорошие записи по созданию RESTful APIs с Drupal? Я вижу API служб, и я думаю, как это делается. То, что я ищу, я полагаю, это сравнение drupal с другими фреймворками для этой конкретной цели.

Update-немного больше информации:

в частности, я, вероятно, захочу вернуть json и в идеале использовать глаголы http-запроса (PUT, POST, GET, DELETE) правильно с общими URL-адресами ресурсов. Т. е. http://mysite/api/widgets/1 (POST - > create, GET - > view, PUT - > update, DELETE - > delete) в отличие от http://mysite/api/widgets/1/delete

4 ответов


Я не могу сравнить с другими фреймворками, но Сервис 3.x (это версия 3 услуги module) предоставляет управляемую ресурсами модель для службы с бэкэндом REST (и XML-RPC). Согласно его документации, вы можете создать новый тип ресурсов довольно легко (если вы знакомы с Drupal), используя простой API, поскольку он заботится о разборе и сериализации JSON[P]/XML.

Обновлено, подсказано Дэвидом Идсом ответ: Я бы начал с Drupal и услуг 3.x если единственной конечной целью является создание Службы RESTful. Они не являются универсальным решением для создания бэкэнда данных с помощью RESTful API. Они должны использоваться, когда то, что необходимо, это веб-сайт CMS, предоставляющий (части) своих данных через RESTful API.


Drupal Services 3.0 упрощает создание служб REST по сравнению с предыдущими версиями (2.икс.) Также сервисы 3.0 работают с Drupal 6 и Drupal 7.


Я не работал с Drupal 7 для таких целей, но летом мне было поручено создать службу RESTful в Drupal 6. Drupal 6 довольно плохо подходит для разработки веб-сервисов: модель данных построена на узлах контента, а система тематизации построена на возврате визуализированного HTML, поэтому вы в конечном итоге боретесь с фреймворком.

модуль услуг приличный, но в конечном итоге мы пошли с Поршень Джанго. Развитие сервиса в поршне заняло гораздо меньше времени и было надежным и работоспособным.


Если вы ищете хорошую структуру для построения архитектуры RESTful, я бы очень предложил:

1. Рамки Перерыва Ну, перерыв отличный, вы направляете маршруты к функциям через URL и перенаправляете управление на другие функции. Он имеет простой ORM, который позволяет вам делать большие вещи за короткое время.

2. Fat-Free Framework Я не использовал F3, но я знаю его простой, хорошо документированный, позволяет маршрутизировать для архитектуры restful и имеет свой ORM