AppEngine打开连接异常中止 [Errno 10053]

2024-06-25 22:53:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试在appengine上的两个页面之间进行简单的http请求/响应通信。代码如下:

class MainHandler(webapp.RequestHandler):
    def get(self):
       values = {'id' : '9',
           'number' : '10001',
           'age' : '15828',
           'name' : 'Squeak' }
       data = urllib.urlencode(values)
       request = urllib2.Request("http://localhost:8082/post", data)
       response = urllib2.urlopen(request)
       content = response.read()
       self.response.out.write(content)

class PostHandler(webapp.RequestHandler):
    def post(self):
       self.response.out.write(str(self.request.get('id')) + '<br>'  + str(self.request.get('number')) + '<br>' + str(self.request.get('age')) + '<br>' + self.request.get('name'))

我将这些处理程序分配给'/'和'/post',结果是在等待HTTP响应时出现了一个死线异常错误,我猜这是因为“主机中的软件中止了已建立的连接”[错误号10053]。我尝试禁用防火墙/防病毒软件,但还是没用。显然,我是应用引擎新手,但这些东西应该是直截了当的。为什么会这样?我已经为此挣扎了一段时间了。在


Tags: brselfidhttpnumbergetresponserequest
1条回答
网友
1楼 · 发布于 2024-06-25 22:53:57

一开始你不需要为appengine选择你想使用的端口(提供数据),所以别再尝试了。在

你在部署的服务器上试过吗?正如评论指出的,local和deployed上的行为可能非常不同,特别是在有多个请求的情况下。在

不可能每一次都忘记一个引擎的每一个请求。在

所以你的代码可能是这样的:

你提出邮寄请求。 无法处理该post请求,因为您仍在处理原始get。等待post完成。 get永远不会完成,因为它正在等待post完成。在

或者类似的事情。在

如果您解释一下您试图用这段代码实现什么,并将其作为一个单独的问题重新提出,可能会更好。因为没有真正的方法来“修复”这个问题。在

相关问题 更多 >