Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 01.09.2012 22:10:40

RESTful

Здравствуйте! Возник такой вопрос. Эта аббревиатура - собственно REST, когда-то пугала меня, но когда я посмотрел что это, то все стало на свои места(возможно понял частично). Ну то что я понял - это 4 http метода(get, post, put, delete) ну и возвращаемый тип данных. Современные браузеры вроде как не поддерживают все эти методы, для них основными есть get и post. Теперь ближе к вопросу. В Laravel я заметил реализацию этих 4 методов, но не понимаю зачем нужны put и delete и где их использовать раз нет поддержки браузерами???

Не в сети

#2 01.09.2012 23:14:12

Re: RESTful

Laravel поддерживает все HTTP методы с помощью «спуфера» — когда в форме используются нестандартные методы она передаётся методом POST, плюс добавляется скрытый параметр, где передаётся имя «настоящего» HTTP-метода. При приёме такой формы Laravel автоматически подставляет нужный метод и таким образом обеспечивает прозрачную работу RESTful.

Не в сети

#3 02.09.2012 20:22:08

Re: RESTful

А могли бы вы еще рассказать о самом REST? Возможно я просто мало знаю, но статей я толковых не находил, но в одной прочитал что это вроде как создание своего API?

Не в сети

#4 03.09.2012 13:35:18

Re: RESTful

  1. это вроде как создание своего API?

REST можно использовать и так. Основная идея в том, что используя разные HTTP-методы можно уменьшить число переменных в URL.

Например, скрипт удаления комментария может открываться по адресу /comments.php?action=delete&id=ID или comments/delete/ID — при этом не имеет значения, используется GET, PUT или любой другой запрос. С помощью REST можно сделать, что один и тот же URL, например, /comments/, будет одновременно выполнять разные действия в зависимости от HTTP-метода — таким образом сделав DELETE /comments/ID мы удалим комментарий, сделав PUT /comments/ — добавим новый/отредактируем старый, GET /comments/ID — прочитаем существующий и т.п.

Без использования REST нам бы пришлось запрашивать /comments/delete/ID/, /comments/edit/ID/, /comments/show/ID/ и т.п.

Собственно, разница только в этом. Лично я стараюсь этим не баловаться (тем более когда речь идёт об API), потому что наверняка найдутся случаи, когда кроме GET и/или POST клиент не сможет ничего использовать (или это будет связано с танцами с бубном). Зачем усложнять ему жизнь?

Не в сети

#5 03.09.2012 16:05:05

Re: RESTful

Как всегда — вопросов больше нет. Спасибо)))

Не в сети

Подвал раздела