手撸一个一起看电影应用-4-Python脚本后端信息收发

本文介绍了一种使用RabbitMQ作为消息中间件实现前后端交互的方法。通过Python的pika库发送消息,前端能够实时响应后端操作的变化。这种方式提高了系统的响应速度及用户体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

抽空整理了下《一起看电影》的代码,感兴趣的可以参考一下,资源下载

使用思路说明

同步后端操作

前端请求后端后,对应请求如果需要在其他前端复现,或者需要在其他前端进行下一步其他操作

则可以通过封装好的函数,在对应的请求中给交换机发信息,让交换机告知其他前端进行操作

安装pika库

python 语言通过pika库和RabbitMQ进行通讯

pip install pika

封装函数便于调用

import pika

def change_data(key,userid):
	# key值对应前端接收信息的key,可以自己设计传入更多参数
	# 可以设计成实例的ID,前端获取记录实例ID后拼接在监听语句中,后端只对对应实例ID发出消息
	
	# mq用户名和密码
    credentials = pika.PlainCredentials('admin', 'admin123..')
	
    # 虚拟队列需要指定参数 virtual_host,如果是默认的可以不填。如果5672映射了别的端口对应修改
    connection = pika.BlockingConnection(pika.ConnectionParameters(host = '部署了RabbitMQ的服务器IP地址',port = 5672,virtual_host = '/',credentials = credentials))
	
    channel=connection.channel()
	
    # 声明exchange,由exchange指定消息在哪个队列传递,如不存在,则创建。durable = True 代表exchange持久化存储,False 非持久化存储
    channel.exchange_declare(exchange = '创建的交换机',durable = True, exchange_type='direct')
	
	# 这里使用凭借json字符串传递更多数据,可以在前端解析使用
    message='{"msg":"data_was_change","user":' + str(userid) + '}'
	
    # 指定 routing_key。delivery_mode = 2 声明消息在队列中持久化,delivery_mod = 1 消息非持久化
    channel.basic_publish(exchange = '创建的交换机',routing_key = str(key) ,body = message, properties=pika.BasicProperties(delivery_mode = 2))
	
    connection.close()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

isSamle

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值