这是一个单事件UDP套接字吗?

时间:2014-10-10 00:33:48

标签: python sockets udp

提前道歉我对套接字编程非常陌生,而我在Tornado和Flask等框架内的经验很少。

这段代码显然会发出UDP,但我不知道该把它拿到哪里,或者它会被拿起来。

"""
Simple, asynchronous, nonblocking UDP emitter for Cube metrics.
"""

import json
import socket
from datetime import datetime

def emit(event_type="always", event_data={},
                destination='127.0.0.1', port=1180, **kwargs):
    event = dict(type=event_type, data=event_data)
    # event["time"] = kwargs.get("time", datetime.utcnow().isoformat())
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, 0)
    s.connect((destination, port))
    s.send(json.dumps(event))
    s.close()

emit()

搜索附带的其余库以查找目的地:127.0.0.1和端口:1180,没有结果。

网络浏览器无法连接到127.0.0.1:1180(我在OS X上),尽管127.0.0.1:5000的Flask应用程序正常。

找到BinaryTides tutorial on UDP sockets,但他们似乎使用while语句。

这是"发射器"只是一个事件,如果是这样,我在哪里,何时以及如何看到它的输出?

1 个答案:

答案 0 :(得分:0)

上述方法是通过循环调用的,因此在每次传递时它都会生成一个.json对象。

它旨在发送给Cube Server