我正在使用expressjs运行服务器。每当用户访问我的特定网址之一(为此,请想象它将是https://server.com/test
)时,我都想使用socketio将数据发送到另一台Web服务器,侦听数据并使用我收到的数据。
几件事要注意:
https://server.com/test
URL。 {"got" : "true"}
的自变量发送到名为"test"
的参数。 {"message" : "true"}
进行回复我的代码非常简单,看起来像这样(路由器):
const express = require("express");
const router = express.Router();
//const Goal = require("../models/battery_message");
const mongoose = require("mongoose");
const io = require("socket.io-client");
const host = "https://another_server.com"
const socket = io(host, {query:"email=edmund@gmail.com"});
console.log("connected");
router.get('/', function(req,res) {
socket.emit("test_me", {"got" : "true"}, function(data){
exists = data;
console.log(data);
});
});
module.exports = router;
我遇到的问题是,每当用户在https://server.com/test
上访问我的服务器时,都不会发生任何事情,因为在无限循环中没有响应。我的猜测是我需要某种其他的socket.emit,因为另一台服务器也可能也会发出对套接字的响应,但是我可能错了。
总而言之,我的问题是,为了成功从另一台服务器获得响应,我需要添加什么?