2010-08-15 5 views
5

나는 그것을 보내고 잊고 싶다. 제가하고있는 http rest service call은 응답하는데 몇 초가 걸립니다. 목표는 더 많은 코드가 실행되기 전에 몇 초 기다리는 것을 피하는 것입니다. 파이썬 스레드를 사용하지 않고 싶습니다. 응답을 무시하고 무시해야한다면 비동기식 비동기 호출을 사용합니다.파이썬에서 http 응답을받지 않고 http 요청을 만들 수 있습니까?

답변

0

HTTP는 해당 요청에 대한 요청 및 응답을 의미합니다. 비동기 방식으로 진행하십시오.

1

요청 및 응답을 HTTP 프로토콜 상태로 비동기 적으로 구현해야합니다.

또 다른 옵션은 미리 빌드 된 모듈을 거치지 않고 소켓에서 직접 작업하는 것입니다. 이렇게하면 프로토콜을 위반하고 응답을 무시하는 본인의 비트를 쓸 수 있습니다. 요청을 한 후에는 연결이 끊어집니다.

0

이 경우 꼬이지 않아도되며, urllib 만 수행하면됩니다. 내가 여기에 관련 코드를 복사하고 http://pythonquirks.blogspot.com/2009/12/asynchronous-http-request.html

을 볼 수 있지만 신용이 링크로 이동 :

 
import urllib2 

class MyHandler(urllib2.HTTPHandler): 
    def http_response(self, req, response): 
     return response 

o = urllib2.build_opener(MyHandler()) 
o.open('http://www.google.com/') 
+3

이 작동하지 않습니다; 'o.open()'은 페이지가 로딩 될 때까지 여전히 블로킹한다. – rattray

관련 문제