Я пытаюсь использовать urlfetch, чтобы сделать запрос к моему приложению (то же приложение, которое отправляет запрос), однако оно не работает.Appengine проблема с urlfetch (Python)
Мой код выглядит следующим образом;
uploadurl = 'http://myapp.appspot.com/posturl'
result = urlfetch.fetch(
url=uploadurl,
payload=data,
method=urlfetch.POST,
headers={'Content-Type': 'application/x-www-form-urlencoded'})
Нет ошибки, когда я это называю, и все, кажется, работает правильно, однако запрос никогда не приходит. Для целей отладки я изменил uploadurl на другое приложение, которое у меня есть, и он работал нормально. Любые идеи, почему я не могу отправлять запросы с использованием urlfetch в одно и то же приложение?
Полное (реальное) URL, который я назвал бы сделано
session = str(os.urandom(16).encode('hex'))
uploadurl = blobstore.create_upload_url('/process?session=' + session)
Так что я не могу понять, как это могло быть неправильно, как URL сделано для меня.
Спасибо.
Вы попробовали свой настоящий uploadurl с urllib, чтобы узнать, правильно это? и что ваша полезная нагрузка действительно сделана из данных действительной формы? плюс, urlfetch исчерпывает ваши квоты, помните, что в виду –
Я попробовал это с urllib, и он сделал то же самое. Я посмотрел на realurl, который он пытается установить POST, и это прекрасно. Данные не были действительными formdata, это был фактически образ, поэтому я изменил его на «image/jpeg», а не на «application/x-www-form-urlencoded», который не имел никакого значения. – Joseph
журналы в appengine? есть ли у вас более подходящий код, который вы можете отправить? Кроме того, добавьте параметр крайнего срока для вашего вызова извлечения (например, 'deadline = 60', поскольку он измеряется в секундах, а 60 - максимально допустимое для вашего приложения) и посмотрите, работает ли он (по умолчанию в противном случае 5 секунд) –