【问题标题】:How to include javascript to my Express.js app which also using socket io?如何将 javascript 包含到我的 Express.js 应用程序中,该应用程序也使用套接字 io?
【发布时间】:2021-11-26 21:18:15
【问题描述】:

这是倒计时项目,我使用https://www.npmjs.com/package/timesync进行时间同步

server.js

const app = require('express')();
const http = require('http').Server(app);
const io = require('socket.io')(http);
const port = process.env.PORT || 3000;
var timesyncServer = require('timesync/server');

app.get('/', (req, res) => {
  res.sendFile(__dirname + '/index.html');
});
app.get('/admin', (req, res) => {
  res.sendFile(__dirname + '/admin.html');
});

io.on('connection', (socket) => {
  console.log('success-connection')
  socket.on('chat message', msg => {
    io.emit('chat message', msg);
  });  
});

http.listen(port, () => {
  console.log(`Socket.IO server running at http://localhost:${port}/`);
});

// handle timesync requests
app.use('/timesync', timesyncServer.requestHandler);

我尝试了一些方法,但没有奏效。
我收到此错误消息:
GET http://localhost:3000/script.js net::ERR_ABORTED 404(未找到)

这是我的项目: File-strucure

【问题讨论】:

  • 在此处提供您的 script.js
  • 我的 script.js 中没有任何内容,只有 console.log(1)。我试图在我的 index.html 页面上像这样 包含它。

标签: javascript node.js express sockets socket.io


【解决方案1】:

您正在尝试发送静态文件。 res.sendFile(__dirname + '/index.html');。您需要在您的快速应用程序中启用使用静态文件。将所有静态文件(html、css、图像、视频)放在一个文件夹中。您可以将文件夹命名为static。然后将此中间件添加到您的应用中

app.use("/static", express.static('./static/')); 

这应该足以提供静态文件。

【讨论】:

  • 如果这解决了您的问题,请告诉我 (✓ + ^)
  • 没有解决。我添加了 server.js 的代码端,当我想运行我的服务器时,我得到了这个:app.use("/static", express.static('./static/')); ^ ReferenceError: express is not defined at Object. (C:\xampp\htdocs\countdown-socket-express\server.js:28:20) at Module._compile (internal/modules /cjs/loader.js:1063:30) 在 Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10) 在 Module.load (internal/modules/cjs/loader.js: 928:32) 在 Function.Module._load (internal/modules/cjs/loader.js:769:14)......
  • 你遇到了什么错误?
  • 还是不行。
猜你喜欢
  • 1970-01-01
  • 2019-07-10
  • 2023-03-25
  • 1970-01-01
  • 1970-01-01
  • 2019-07-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多