CORS - Использование AJAX для публикации в веб-сервисе Python (webapp2)

Это будет долго:

Итак, я разрабатываю гаджет календаря Google, который отправляет запросы в API-интерфейс REST Python webapp2, размещенный на Google App Engine.

Проблема возникает, когда я пытаюсь POST что-то, что не позволяет мне из-за CORS. В Chromes 'DevTools это говорит:

Method: OPTIONS.

Status: (failed) Request header field Content-Type is not allowed by Access-Control-Allow-Headers.

Origin https://hq34i4geprnp5vci191ljfuhcoerscl4-a-calendar-opensocial.googleusercontent.com is not allowed by Access-Control-Allow-Origin. 

Я знаю, что это из-за CORS. Вот:

Ajax - «Локальный хост Origin не разрешен Access-Control-Allow-Origin»

Это говорит о том, что я должен добавить

Access-Control-Allow-Origin: *

Для заголовков, но опять же я новичок в ajax, и мне интересно, если это сделано так:

    $.ajax({
        type: "POST",
        url: "https://myapp.appspot.com/service",
        contentType: "application/json; charset=utf-8",
        data: data,
        beforeSend: function (request)
        {
            request.setRequestHeader("Access-Control-Allow-Origin", "*");
        }
        success: function(data) {
              alert("AJAX done");
        }
    });

При добавлении этих заголовков выводразные (что заставляет меня задуматься о том, разрешено ли происхождение, хотя на самом деле я не знаю):

Method: OPTIONS.

Status: (failed) Request header field Content-Type is not allowed by Access-Control-Allow-Headers.

XMLHttpRequest cannot load https://myapp.appspot.com/service. Request header field Access-Control-Allow-Origin is not allowed by Access-Control-Allow-Headers. 

Я даже нашел это:

http://james.padolsey.com/javascript/cross-domain-requests-with-jquery/

Что позволяет мне делать запросы GET, но я бы хотел научиться делать их без этого.

Также на моем веб-сервере у меня есть это:

...
    class webService(webapp2.RequestHandler):
         options(self):
               self.response.write('options')

         post(self):
               self.response.write('post')

    application = webapp2.WSGIApplication([
        ('/', MainPage),
        ('/service', webService)
    ], debug=True)

Я не знаю, должен ли я добавить что-то еще на веб-сервер, и я не нашел информации о том, что должен это делать. Также я думаю, что я близок к тому, чтобы выполнить запрос CORS, но я не могу найти Пример, который объясняет все это.

Пожалуйста помоги.

Ответы на вопрос(3)

Ваш ответ на вопрос