HttpRequest в Python не принимается Django - PullRequest
0 голосов
/ 04 ноября 2011

В настоящее время я пытаюсь создать веб-сервис REST для своего сайта django с нуля, и я не хочу использовать внешние библиотеки, так как предполагается, что это опыт обучения.Одно из моих приложений действует как веб-приложение, а другое - как веб-служба.У меня есть много примеров того, как реализовать веб-сервис и возвращать ответы Http, но проблема заключается в создании и отправке http-запросов, примером которых я не являюсь.Я хочу, чтобы мое приложение отправляло http-запрос другому приложению, которое его получает и отвечает.

Веб-служба прекрасно отвечает на запрос, сгенерированный браузером.Я просто пишу адрес ресурса в адресной строке и получаю ожидаемый ответ.Я протестировал использование urlopen встроенного в Pyll urllib2, но оно будет зависать вечно, возможно из-за того, что сокет занят.Я понимаю, что не указал тайм-аут, но меня больше беспокоит то, что сервер никогда не получает запрос.Нет журнала запроса когда-либо происходящего.URL в коде и в браузере идентичны.

Есть ли способ в django просто сгенерировать Httprequest и отправить его в путь без особых хлопот?

#This is the offending line. 
response = urllib2.urlopen('http://127.0.0.1:8000/api/browse/')

1 Ответ

2 голосов
/ 04 ноября 2011

Это просто потому, что сервер разработки является однопоточным.Он не может одновременно отвечать на исходный запрос клиента и на запрос, сгенерированный внутри, поэтому он зависнет.

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