2014-01-13 2 views
0

в экспресс сгенерированный код:Что такое соединение methodOverride()

... 
app.use(express.urlencoded()); 
app.use(express.methodOverride()); 
app.use(express.cookieParser('my secret cat')); 
... 

express.methodOverride() это unfamilar мне. Я прочитал документ doc Connect here, но все же пропустил всю картину.

Мой вопрос:

В какой ситуации мы должны переопределить метод (GET, POST, PUT и DELETE), используя express.methodOverride()?

Я нашел соответствующий ответ here, но мой последующий на вопрос:

Если нет express.methodOverride(), я не могу использовать app.put(), app.delete(), приложение .get(), app.post() в Express. Это верно?

ответ

2

methodOverride - это доступность форм браузера, представленных со стандартным представлением формы, которые могут использовать только методы GET или POST. Кроме того, похоже, Adobe Flex также был ограничен в методах HTTP, которые он мог отправить. Для получения дополнительной информации см. this answer. Если вы используете взаимодействие XmlHttpRequest (AJAX) с вашим сервером, браузеры в эти дни могут полностью использовать все методы REST.

вынос всегда закодировать свой экспресс-код с полным набором методов REST, app.put, app.del и т.д. Если вы делаете <form> тегов представления, а затем использовать methodOverride, а также и все будет хорошо.

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