gpt4 book ai didi

javascript - Node.js 服务器-客户端通信

转载 作者:行者123 更新时间:2023-12-03 01:02:05 26 4
gpt4 key购买 nike

我有一个不和谐的机器人,我想为该机器人制作一个网站。例如,我想获取不和谐服务器成员并在标题或其他内容中打印到网站。或者,如果单击页面上的按钮,机器人就会向 channel 发送消息。你能告诉我该怎么做吗?

最佳答案

您必须使用以下命令安装名为 Express 的 Node 包: npm install --saveexpress 。你必须做:

    var express = require('express');
var app = express();
var server = app.listen(3000);
app.use(express.static('public'));//name of the website folder that has the html and js files.

它将在 localhost:3000 上托管服务器。然后,当像您所说的那样单击按钮时,您需要在 Node js 服务器上运行代码。为此,您需要使用套接字。您需要另一个名为 socket.io 的 Node 包。所以只需运行 npm install --save socket.io

然后写下来

    var socket = require('socket.io')
var io = socket(server);

io.sockets.on("connection", function(Socket){
console.log("new connection " + Socket.id);
Socket.on("sendMessage", function(data){
//send a discord message.
});
});

好吧,现在转向客户端。

在 HTML 文件中,您需要引用套接字库。

    <script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.1.1/socket.io.dev.js"></script>

在js文件中你需要这样写。

    var socket;
socket = io.connect("http://localhost:3000");

var button = document.getElementById('button');
button.addEventListener('click', function(){
var data = {};
socket.emit("sendMessage", data);
});

这将向服务器发送请求,当服务器收到请求时,它将运行您输入的代码:

  Socket.on("sendMessage")

网站网址位于 localhost:3000。而且它只能在您的 PC 上使用,与公开不同。

希望这对你有帮助!

关于javascript - Node.js 服务器-客户端通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52580966/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com