Comments 27
Можете меня пнуть, но я не понимаю почему все так любят Ангуляр, если даже таки элементарные вещи делаются там костылями.
Думаю, что эта та вещь, которую однажды сделал и забыл. А рутинный код он ускоряет в разы.
А в чем костыль? Костыль это использовать application/x-www-form-urlencoded там, где нет формы и писать 57 строк на клиенте, вместо одной на сервере.
Ну вот тут пишутся эти 57 строк, а даже в том же Backbone они не пишутся.
Чем не костыль?
Чем не костыль?
Я о том, что x-www-form это не элементарная вещь, а костыль. В том же Backbone:
AngularJS, видимо, выбрал не поддерживать legacy web servers.
Вот что хотелось бы в AngularJS, это чтобы ресурсы возвращали promises по аналогии с $http, и в promises реализовали бы
If you're working with a legacy web server that can't handle requests encoded as application/json, setting Backbone.emulateJSON = true; will cause… the request to be made with a application/x-www-form-urlencoded MIME type, as if from an HTML form.
AngularJS, видимо, выбрал не поддерживать legacy web servers.
Вот что хотелось бы в AngularJS, это чтобы ресурсы возвращали promises по аналогии с $http, и в promises реализовали бы
always
.Видно не такие уж они legacy, раз такая проблема возникла
Понятно, спасибо. А можно узнать какие серверные фреймворки поддерживают application/json, а какие нет?
Так уже есть в новой версии habrahabr.ru/post/180767/ См. сервис $q
Мне кажется в любом проекте должна быть обертка вокруг глобальных переменных, и такую дают вроде как все фреймворки. А если есть обертка — зачем такие костыли?
Благо Flask это обрабатывает как положено.
Для Silex есть решение в Cookbook. silex.sensiolabs.org/doc/cookbook/json_request_body.html
По моему надо все это вытащить в ангуляровский сервис, а не размазывать по контроллеру и конфигурации модуля.
Было бы интересно узнать, как цивилизованно обрабатывать формы с input type=file в ангуляре.
Как я понимаю рассчитано на использование с сервером типа nodejs.
Б-га ради, не пишите слово «Джиквери» :-)
Sign up to leave a comment.
AngularJS + PHP. Заставляем $http-сервис веcти себя как jQuery.ajax()