Говорят, что в GAE SDK 1.5.4 удалено требование о том, что обработчик blobstoreuploadhandler должен возвращать перенаправление, а на производстве это якобы уже сделано, чтобы обработчик мог сделать «обычный» ответ на шаблон с переменными шаблона. Мне нужна эта возможность с dev_appserver, и поэтому я спрашиваю, как я могу изменить dev_appserver, чтобы разрешить обработчику отображать шаблон с переменными шаблона. Я предполагаю, что код, который мне нужно изменить, находится в файле http://code.google.com/p/googleappengine/source/browse/trunk/python/google/appengine/tools/dev_appserver_blobstore.py, но я не знаю, что нужно изменить. Не подскажете, как сделать так, чтобы обработчик мог нормально отвечать?
def EndRedirect(self, redirected_outfile, original_outfile):
"""Handle the end of upload complete notification.
Makes sure the application upload handler returned an appropriate status
code.
"""
response = dev_appserver.RewriteResponse(redirected_outfile)
logging.info('Upload handler returned %d', response.status_code)
if (response.status_code in (301, 302, 303) and
(not response.body or len(response.body.read()) == 0)):
contentless_outfile = cStringIO.StringIO()
contentless_outfile.write('Status: %s\n' % response.status_code)
contentless_outfile.write(''.join(response.headers.headers))
contentless_outfile.seek(0)
dev_appserver.URLDispatcher.EndRedirect(self,
contentless_outfile,
original_outfile)
else:
logging.error(
'Invalid upload handler response. Only 301, 302 and 303 '
'statuses are permitted and it may not have a content body.')
original_outfile.write('Status: 500\n\n')
Обновление: решение опубликовано по этой ссылке https://groups.google.com/forum/#!topic/google-appengine-python/vnvhUG1-UN0
(301, 302, 303)
? - person cope360   schedule 30.08.2011