如何从服务器上的推送数据服务可靠地检索消息?

2024-06-09 21:51:08 发布

您现在位置:Python中文网/ 问答频道 /正文

在第三方服务器上有一个推送数据服务。我需要能够接收服务器上运行的python脚本发送的几乎所有消息

我想知道,它可靠吗?我可以在我的服务器上运行python脚本并让它将传入的消息插入到db中,以便稍后从客户机应用程序访问它们吗?还是应该有其他更复杂的事情,比如某件事的一个更高的层次?我可以在那个场景中使用RabbitMQ吗?它真的需要吗


Tags: 服务器脚本应用程序消息db客户机场景rabbitmq
1条回答
网友
1楼 · 发布于 2024-06-09 21:51:08

下面是一个用Flask设置的简单api,它在127.0.0.1:8001上运行,用BeautifulSoup解析XML数据,并响应结果

note.xml:

<note>
  <to>Tove</to>
  <from>Jani</from>
  <heading>Reminder</heading>
  <body>Don't forget me this weekend!</body>
</note>

应用程序:

from flask import Flask, request
from bs4 import BeautifulSoup

app = Flask(__name__)

@app.route('/xml', methods=['POST'])
def recieve_some_xml():
    data = request.get_data()
    parsed = BeautifulSoup(data)

    to = parsed.find('to').text
    sender = parsed.find('from').text
    heading = parsed.find('heading').text
    body = parsed.find('body').text

    # do something with data, insert into db...

    return "Data sent was: %s, %s %s, %s" % (to, sender, heading, body)

if __name__ == "__main__":
    app.run(debug=True, port=8001)

当我将XML数据发送到该地址时:

curl -H "Content-Type: text/xml" -d @note.xml -X POST http://127.0.0.1:8001/xml
Data sent was: Tove, Jani Reminder, Don't forget me this weekend!

相关问题 更多 >