2015-04-17 2 views
-1

Я искал и пробовал разные вещи более часа. Я нашел много статей, которые в основном являются тем, что происходит со мной, но ничто из того, что я нахожу/не пытаюсь, это исправление 404. Угловое преобразование моего $ http.post в метод OPTIONS. Это приводит к сбою моего маршрута node/express, потому что нет маршрута OPTIONS. Это POST-маршрут. Таким образом, я получаю 404. Средство промежуточного уровня работает нормально, но маршрут app.post нельзя ударить и не может понять, как заставить метод быть POST.

Это то, что я вижу в Chrome консоли "Консоль" на вкладке ...

enter image description here

Это то, что я вижу в закладке Chrome консоли "Сеть" ...

enter image description here

Это мой код обслуживания AngularJS ...

enter image description here

Это мой Узел/Экспресс-маршруты промежуточного кода ...

enter image description here

Это мой Узел/маршрут Экспресс POST не будет работать, потому что метод не так !!! ...

enter image description here

Я пробовал много разных вещей в коде клиента и сервера и заголовках настроек в клиенте и сервере, и я не могу сделать эту работу.

Может кто-нибудь, пожалуйста, разобраться со мной? : -/

EDIT:

Я нашел это сам, в конце концов. Моя проблема не имела абсолютно никакого отношения к «дублированной» статье. Это похоже на ту же проблему, но это совсем не то же самое. Мои снимки экрана выше DO показывают проблему. Это видно и я принимаю ответ от кого видит ...

+2

Из скриншота, вы пытаетесь получить доступ к Localhost: 8098 из локального хоста: 8398. Взгляните на http://stackoverflow.com/questions/12111936/angularjs-performs-an-options-http-request-for-a-cross-origin-resource для получения дополнительной информации о запросе HTTP OPTIONS. –

+0

8398 - это приложение узла/экспресс-сайта. 8098 является узлом/экспресс-сервером REST api. У меня есть заголовок сервера, чтобы разрешить источник 8398. У меня есть все другие заголовки, которые я нашел во время поиска, установки. Чего не хватает? – Locohost

+0

Где в статье, которую вы говорите, является дубликатом, я вижу ответ на мой вопрос 404? Какая строка в этой статье решает мою проблему, потому что я не вижу строку, которая дает мой ответ. – Locohost

ответ

0

Есть ваш пытались добавить на свой POST следующий параметр:

"headers": { "Content-Type": "application/x-www-form-urlencoded" } 

Кроме того, есть некоторые «специфичность» на AngularJS , Я всегда проверяю обычный Javascript, чтобы быть уверенным, что это не может быть связано с угловым.

Я закончил с использованием этой большой и простой Chrome Estention: POSTMAN

+0

Изменение моих заголовков, установленных в клиентской службе, на ваше предложение, вызывает запрос показать как POST на вкладке сети, однако все же такая же ошибка 404. Так что моя мысль о запросе OPTIONS об убийстве неверна. Это что-то еще. – Locohost

+0

вы пробовали POSTMAN? – aorfevre