我正在使用PHP脚本和服务器上的MySQL数据库以及客户端上的python脚本进行长轮询模式。 如果数据库中的标志设置为0,则PHP页面将以tupel的id响应。如果请求超时,则应启动新请求。这是我的代码,我找不到我的错误:
gotID = False
ID = 0
while gotID == False:
f = requests.get("http://example.de/ajax_backend.php")
print("status: " + str(f.status_code))
print("content: " + f.text)
if int(f.status_code) == 200:
gotID = True
ID = f.text
如果我像这样运行代码,我会得到这个输出。首先将标志设置为1,然后在中间我将标志更改为0:
我认为if
语句中有错误,但我找不到它。你能救我吗?
答案 0 :(得分:0)
我现在创建了一个工作代码:
gotID = None
ID = 0
while not gotID:
f = requests.get("http://example.de/ajax_backend.php")
print("status: " + str(f.status_code))
print("content: " + f.text)
try:
ID = int(f.text)
gotID = "samlpe content"
except ValueError:
gotID = None
但我仍然不知道为什么上面的代码不起作用。