我必须从前端发送一条消息,并且必须从data.json文件中提取该消息,然后将结果显示给客户端。
这是服务器端的伪代码:
var io = socket(server);
io.on('connection', (socket) => {
socket.on('chat', function(data){
fs.readFile('data.json', (err, data1) => {
if (err) throw err;
let client = JSON.parse(data1);
console.log(client[data.message].id);
});
// console.log(data.message);
io.sockets.emit('chat', data);
});
通过输入的数据将被发送到服务器,如下所示:
var socket = io.connect('http://localhost:3000');
var message = document.getElementById('message'),
btn = document.getElementById('send'),
output = document.getElementById('output'),
feedback = document.getElementById('feedback');
btn.addEventListener('click', function(){
socket.emit('chat', {
message: message.value,
// handle: handle.value
});
message.value = "";
});
现在我的消息格式如下:
{“symbols”: [“symbol1”, “symbol2”, ….]}
data.json
文件是这样的:
{
"nasdaq-ospr": {
"id": "70217145",
"unique_id": "NASDAQ-OSPR",
"function": "nasdaq-ospr",
"close": "10.14",
"open": "11.37",
"price": "11.29",
"high": "11.4",
"low": "11.29",
"change_price": "1.15",
"per": "11.34",
"day_range": "11.29 - 11.4",
"change_all": "+1.15 (+11.34%)",
"sign": "+",
"market_open": "N",
"timestamp": "08/23 20:02",
"time_zone": "EST",
"change_value": "N"
},
{
}...
}
现在,无论输入内容如何,我都必须从中获取每个字段:
for eg-
if I input
{“nasdaq-ospr”: [“id”, “unique_id”,"function"]}
然后它应该还给我:
"id": "70217145",
"unique_id": "NASDAQ-OSPR",
"function": "nasdaq-ospr",