Методы Ajax - что лучше? - PullRequest
0 голосов
/ 23 октября 2010

У меня есть куча операций вставки, обновления и удаления, которые мне нужно выполнить через Ajax. Что из следующего будет лучшим подходом?

  1. Индивидуальные методы для каждой функции (например, delete_foo, insert_foo, update_foo, delete_bar, insert_bar, update_bar и т. Д.)

  2. «Мастер» метод и просто передать параметр, чтобы различать операции.

Преимущество подхода № 2 заключается в том, что общие вещи в отдельных методах, такие как проверка или расшифровка идентификатора и т. Д., Могут быть объединены. Тем не менее, это также означает, что этот мастер-метод будет довольно большим.

Думаю, идея вызова метода-индивидуума для отдельного метода была бы не очень хорошей идеей. Причина состоит в том, что отдельные методы, если их исключить из общих задач, которые теперь обрабатываются главным методом, являются однострочными кодами (по большей части).

Ответы [ 2 ]

2 голосов
/ 23 октября 2010

Следует учитывать, что что-то разрушительное, например удаление, никогда не должно полностью контролироваться запросом GET.Вы должны всегда использовать параметры POST для чего-то подобного.Кроме того, я бы сказал, что это полностью зависит от личных предпочтений и того, что логически кажется правильным для вашей системы.Например, если вы использовали что-то вроде Zend Framework, вы могли бы иметь отдельные действия для каждой операции, но использовать общий набор проверок / расшифровок в вашем контроллере в ваших методах constructor / init

0 голосов
/ 23 октября 2010

Альтернативой обоим этим методам является использование правил REST. Это использует другие методы HTTP, отличные от GET и POST.

Например

GET /foo            --select foo
POST /foo           --this would insert
PUT /foo            --this would update
DELETE /foo         --this would delete

GET /bar            --select bar
POST /bar           --this would insert
PUT /bar            --this would update
DELETE /bar         --this would delete

Более подробную информацию можно найти здесь http://en.wikipedia.org/wiki/Representational_State_Transfer#RESTful_web_services.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...