WebHook
WebHook是一个基于HTTP的Broker,它可以将任务对外暴露一个HTTP接口,用于接收来自HTTP请求的消息。
python
from onestep import step, WebHookBroker
# 对外提供一个webhook接口,接收外部的消息
webhook_broker = WebHookBroker(path="/push")
@step(from_broker=webhook_broker)
def waiting_messages(message):
print("收到消息:", message)
step.start(block=True)上述代码会在http://127.0.0.1:8090/push 提供一个POST接口,用于接收消息。
INFO
默认端口为8090 ,可以通过port参数来修改。
bash
curl -H "Content-Type: application/json" -X POST -d '{"body": "Hello OneStep"}' "http://127.0.0.1:8090/push"text
收到消息: {'body': 'Hello OneStep', 'extra': {'task_id': '2a922df2-2419-4978-9184-4227558d641b', 'publish_time': 1691568238.781, 'failure_count': 0}}