прокси-сервер python для внедрения службы сценариев приложений Google в iframe

Существует заголовок «X-Frame-Options: SAMEORIGIN», который предотвращает отображение сценариев приложений на странице не на сайтах sites.google.com (или docs.google.com)

Как я могу создать прокси-сервер python для работы с IFrame. Я подозреваю, что прокси должен заменить тег SAMEORIGIN и работать с командами POST в стиле ajax. Это новое основание для меня, никогда не нужно было устанавливать прокси-сервер раньше.

Пример страницы сценария Google Apps: https://docs.google.com/macros/exec?service=AKfycbyrbgVS39Hf-RHYVPbnCKzf_uVaD0sGeFSKEqyRIw

Эти прокси-решения выглядят очень близко: как я могу заставить свой простой витой прокси работать?

Я нашел инструкции по настройке прокси-сервера в App Engine, но это не удается с помощью POST-команд ajax: http://www.labnol.org/internet/setup-proxy-server/12890/

Это известный сценарий Google Apps Script № 546 и № 522. Около 1 года, около 100 человек ищут решение.

One Solution collect form web for “прокси-сервер python для внедрения службы сценариев приложений Google в iframe”

Bs2grproxy работает с небольшими изменениями. Я разместил решение здесь: http://code.google.com/p/google-apps-script-issues/issues/detail?id=546#c104

Перемены:

В файле bs2grproxy.py ниже строки 48 «raise Exception (« Неподдерживаемый … »вставить:

scm = 'https' 

ниже строки 134, «raise Exception (« Requested … »insert:

  if fetched: if resp.headers.get('Content-Type', '').find('html') >= 0: resp.content = resp.content + '<style type="text/css"> .warning-panel {display: none;} </style>' resp.headers['x-frame-options'] = 'IGNORE' logging.info("warning-panel hidden and x-frame-options reset") 

Вам также может потребоваться изменить время прокси-сервера в bs2grproxy.py, например:

 resp = urlfetch.fetch(new_path, self.request.body, method, newHeaders, False, False, 30) 

Эдди.

  • Операции чтения и записи, связанные с ComputedProperty в GAE NDB
  • В Python, как я могу проверить, есть ли в Google App Engine SDK?
  • Объект EntryPoint не имеет атрибута «разрешение» при использовании Google Compute Engine
  • Исключение BadStatusLine, возникающее при возврате ответа с сервера в Python 3
  • «Слишком много конфликтов» при создании нового объекта в dataStore
  • Как включить сторонние библиотеки Python в Google App Engine?
  • google app engine - как добавить папку lib?
  • Перекрестная группа (XG) Транзакции и дальнейшее объяснение использования
  • Python - лучший язык программирования в мире.