使用 Google App Engine 进行异步获取请求

2024-03-02

我正在阅读文档异步获取请求 https://developers.google.com/appengine/docs/python/urlfetch/asynchronousrequests在GAE中。 Python 不是我的第一语言,因此我很难找到最适合我的情况的语言。我并不真正需要或关心请求的响应,我只需要它来发送请求并忘记它并继续执行其他任务。

所以我尝试了文档中的代码:

from google.appengine.api import urlfetch

rpc = urlfetch.create_rpc()
urlfetch.make_fetch_call(rpc, "http://www.google.com/")

# ... do other things ...

try:
    result = rpc.get_result()
    if result.status_code == 200:
        text = result.content
        # ...
except urlfetch.DownloadError:
    # Request timed out or failed.
    # ...

但除非我包含,否则这段代码不起作用try: and except,我真的不关心。省略该部分会使请求无法通过。

在我不关心响应的情况下创建获取请求的最佳选择是什么,以便它只是开始请求,然后继续执行其他任何任务,并且永远不会回头?


只需执行您的任务即可

# ... do other things ...

评论是。当您完成其他工作后,请致电rpc.wait()。请注意,这不是try/except这就是让它发挥作用的原因get_result()称呼。可以替换为wait().

所以你的代码看起来像这样:

from google.appengine.api import urlfetch

rpc = urlfetch.create_rpc()
urlfetch.make_fetch_call(rpc, "http://www.google.com/")

# ... do other things ... << YOUR CODE HERE

rpc.wait()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Google App Engine 进行异步获取请求 的相关文章

随机推荐