javascript - 通过外部网站控制node.js应用程序的事件

标签 javascript node.js authentication

我正在创建我的第一个 Nodejs 应用程序。我想询问一个从外部网站(服务器)安全控制 Node.js 应用程序的想法...

说明: 我在服务器上运行 steambot...该机器人可以聊天/交易/等等。

在我的网站 (example.com/bot) 上,我得到了操作:与“这个”人交易“这些”元素...我使用了简单的 POST 表单,没有进行身份验证,这非常愚蠢,但我正在尝试。

问题: 告诉机器人仅通过我的网站做什么的最佳方法是什么(因为 POST 表单您可以在任何您想要的地方复制使用)+以 JSON 对象形式发送信息 f.e.

谢谢! ^^

最佳答案

IMO,您最好的选择是使用像 socket.io 这样的实时通信库。

服务器:

var app = require('http').createServer(handler)
var io = require('socket.io')(app);
io.on('connection', function (socket) {
  socket.on('trade', function (data) {
    // Make your server-side bot do stuff
    bot.doTrade(data.itemId, data.userId);
  });
});

客户:

<script src="/socket.io/socket.io.js"></script>
<script>
  var socket = io('http://localhost');
  $('#tradeBtn').click(function () {
    socket.emit('trade', { itemId: 123, userId: 456 });
  });
</script>

Socket.io 在后台使用多种方法与服务器进行通信。它将首先尝试使用 websockets,如果失败,它将回退到 server-sent eventslong-polling(如有必要)。 socket.io 的好处是你不必担心那么多;它只是为你照顾它。您可以监听并发出来自客户端和服务器的事件,以促进服务器和客户端页面之间的实时通信。

关于javascript - 通过外部网站控制node.js应用程序的事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28884930/

相关文章:

javascript - 云错误 : must supply api-key -/node_modules/cloudinary/lib/utils. js:982

ios - 登录页面未完全注销用户 iOS

authentication - 创建服务器证书时出错 - 在 IBM Worklight 6.2 中基于 X509 证书的身份验证

authentication - Wildfly 8 基本身份验证

javascript - 在 Chrome 中使用 javascript 在网站上插入用户名和密码

javascript - React setState 来更新对象

php - 通过 PHP 将多维数组 POST 到服务器

c# - 如何通过 knockout 保存单条记录

javascript - 将再生器运行时与 NodeJS 结合使用

javascript - React 从组件中的 axios 获取响应