我的Windows应用程序需要调用脚本,但它不需要等待响应。它只是在URL的查询字符串中发布数据。为了速度,我不想等待响应,我没有从服务器发送任何东西。
以下代码是否在服务器上调用脚本而不是等待响应?或者是opener.open()
阻塞(发送HTTP请求并等待响应)?
proxy = urllib2.ProxyHandler()
opener = urllib2.build_opener(proxy)
in_ = opener.open( "www.mysite.com/a.py?data=somedata )
注意:我发送的数据是通过查询字符串。所以HTTP请求应该是GET
afaik。也许我应该POST
数据?使用Request.add_data()
。这是否意味着我不必等待回应?我对可能在代理后面的用户使用ProxyHandler
。如果POST
位于代理后面,HTTPHandler
是否仍然有用 - link建议只有{{1}}可以使用。
答案 0 :(得分:0)
您可以定义一个包含HTTP请求的函数,并使用一个将在后台运行它的线程调用它。
您可以将args传递给args变量。
from threading import Thread
def makeReq():
proxy = urllib2.ProxyHandler()
opener = urllib2.build_opener(proxy)
in_ = opener.open( "www.mysite.com/a.py?data=somedata" )
thread = Thread(target = makeReq, args=())
thread.start()