0

我有个疑问。

我有这部分代码:

#Code for retrieving the MAC address of the node
    como_url = "".join(['http://', options.como_address, ':', options.como_port,
                        '/ztc_config?netid=', netid,
                        '&opcode_group=', opcodegroupr, 
                        '&opcode=', opcoder, '&start=-5m&end=-1s'])

    print como_url

    http_client = AsyncHTTPClient()
    response = yield tornado.gen.Task(http_client.fetch, como_url)

    ret = {}
    if response.error:
        ret['error'] = 'Error while retrieving the response'
        self.write(tornado.escape.json_encode(ret))
    else:
        for line in response.body.split("\n"):
            if line != "": 
                value = int(line.split(" ")[6])
                ret['response'] = value
        self.write(tornado.escape.json_encode(ret))

我希望,如果来自服务器的响应为空,则处理程序关闭。

我不知道这是否

 if response.error:
        ret['error'] = 'Error while retrieving the response'
        self.write(tornado.escape.json_encode(ret))

关闭处理程序并在页面中返回是正确的。或者,如果我必须做一个 self.finish .....

非常感谢你。

4

1 回答 1

0

解决方案是:

if response.error:
        ret['error'] = 'Error while retrieving the response'
        self.write(tornado.escape.json_encode(ret))
        self.finish()
于 2013-03-25T10:24:41.920 回答