Настройте приложение Google App Engine для междоменного домена - PullRequest
4 голосов
/ 11 июля 2011

Не могли бы вы посоветовать, как мы можем настроить наше приложение Python, размещенное на Google App Engine, для приема опций, GET, POST, PUT и DELETE из AJAX, выполняемых из браузера?

Специфика таких вызовов заключается в том, что XmlHTTPRequest сначала делает запрос OPTIONS серверу, чтобы узнать, какие междоменные глаголы разрешены, и, если необходимо, есть в списке - браузер делает этот запрос позже.

Прямо сейчас мы просто получаем метод 405 Not Allowed при попытке браузера выполнить запрос OPTIONS.

AJAX-вызовы выполняются с другого сайта / домена.

Спасибо,

Roman.

1 Ответ

5 голосов
/ 12 июля 2011

Один из способов обойти политику того же происхождения , позволяющую браузерам междоменные запросы, принимает JSONP , но AFAIK, он поддерживает только глагол GET;Фактически, это запрос GET для извлечения тега src <script>, внедренного в документ DOM

Если JSONP не является опцией, более современный способ - использование CORS * 1011.*, добавив заголовок Access-Control-Allow-Origin Http к ответу *:

In Python :

self.response.headers['Access-Control-Allow-Origin'] = '*'

В Java :

resp.setHeader("Access-Control-Allow-Origin", "*");

* Проверьте совместимость браузера здесь

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