1

直到几天前,我有一个在 GAE 和测试服务器上运行良好的应用程序。它连接到远程站点,自动登录和浏览页面并输入信息。远程站点使用动态 URL 来跟踪会话,每个页面都提供下一次调用的链接。该程序非常基本:urllib2.urlopen 然后正则表达式提取下一个 url 键,然后新调用 urllib2.urlopen 等等。

现在我的应用程序在测试服务器上仍然可以正常工作,但在 GAE 上部署时失败:我对 urllib2.open 进行了一系列调用,并且大多数时候,远程站点说它已经在第二次调用时丢失了会话,但是 1/10我可以参加第三次电话会议,一旦 GAE 成功参加第四次电话会议。

这似乎表明这不是远程站点(没有改变)的安全问题,也不是我在其他帖子中读到的重定向和 cookie 问题。

用户向我报告说它在 9 月 13 日 14 日之前运行良好,并在 20 日向我报告了失败。最近 GAE 中对 URLfetch 的处理是否发生了变化?

我刚刚在这个问题上花了 2 天时间,没有任何切实的线索。

可能是IP地址的问题?远程服务器可以同时控制与 IP 地址和动态 URL 的会话,我可以想象 GAE 不保证在对 GAE 的同一次调用中,对 URLlib 的所有调用都由同一台机器处理?这可以解释为什么有时它适用于两个或三个连续的 URL。我不知道足够的GAE内部机制来确认。

提前感谢您的想法。

4

1 回答 1

0

我们不保证urlfetch所有呼叫都会在同一个 IP 地址上发出。

于 2013-09-22T21:13:51.007 回答