我从Adonis.js框架开始,并不了解websocket服务是如何工作的。我按照文档中的说明来做,并试着做一个房间。
我让你看看:
// app/Ws/Controllers/ChatController.js
'use strict'
class ChatController {
constructor (socket, request) {
this.socket = socket
this.request = request
}
* joinRoom (room) {
console.log(this.socket) <---- get undefined
}
}
module.exports = ChatController
// resources/views/welcome.njk
{% extends 'master' %}
{% block content %}
<script src="https://unpkg.com/adonis-websocket-
client@1.0.2/dist/ws.js" charset="utf-8"></script>
<script type="text/javascript">
const io = ws('', {})
const client = io.channel('chat').connect(console.log)
client.joinRoom('index', {}, console.log)
</script>
{% endblock %}
当我加载欢迎页面时,我在控制台中得到了"undefined“。我不明白我的错误。
谢谢。
Beru
发布于 2017-05-30 02:08:46
希望我没有迟到。将adonis-websocket更新为1.0.4,然后在控制器中修改:
* joinRoom (room, payload, socket) {
console.log(socket)
}有效负载是您作为自定义数据发送的内容:
client.joinRoom('index', {data}, console.log)希望能有所帮助。如果你需要更多的澄清,请告诉我。
https://stackoverflow.com/questions/43617008
复制相似问题