项目连接mq, 代码如下:
/**初始化 ws 对象 */
var ws = new WebSocket('ws://ip地址:15674/ws');
/**获得Stomp client对象 */
var client = Stomp.over(ws)
/**定义连接成功回调函数 */
var on_connect = function(x) {
console.log('>>>连接上')
const userId = localStorage.getItem('userName')
if (!userId) return
var id = JSON.parse(userId).userId
var url = '/queue/' + id
console.log(url)
//data.body是接收到的数据
client.subscribe(url, function(data) {
var msg = data.body
document.dispatchEvent(new Event('mq'))
document.dispatchEvent(new Event('mqlist'))
console.log('收到消息队列数据:' + msg)
})
}
/**定义错误时回调函数 */
var on_error = function() {
console.log('error')
}
/**连接RabbitMQ 连接队列 输入 账号 密码*/
client.connect('admin', '123456', on_connect, on_error, '/');
client.debug = null
上面连ip、用户名、密码都写在了前端是否合理?
有什么好的建议
建议让后端处理 前端消费后端提供的接口 如果考虑到后端接口安全 可以设置nginx安全白名单访问域名 这样只能你当前的web站点才能访问后端服务