我尝试使用node.js和express来创建聊天客户端,但是一旦我尝试使用外部CSS或JS文件,我就会遇到GET错误。
目前我的index.js为:
var express = require('express');
var app = express();
var http = require('http').Server(app);
var io = require('socket.io')(http);
var path = require('path');
app.use(express.static(__dirname + '/public'));
app.get('/', function(req, res){
res.sendFile(__dirname + '/index.html');
});
io.on('connection', function(socket){
socket.on('chat message', function(msg){
io.emit('chat message', msg);
});
});
http.listen(3000, function(){
console.log('listening on *:3000');
});
在我的index.html中,我使用:
<script src="/dropdown.js"></script>
<link rel="stylesheet" type="text/css" href="/style1.css">
链接HTML中的文件。
我的代码结构是
index.js
index.html
public
style1.css
dropdown.js
我已经在stackoverflow上查看了一堆其他解决方案,但没有一个能够正常工作。我尝试过使用express.static / app.static和html文件中链接CSS / JS文件的各种组合的各种组合。所有这些都会导致GET错误。
答案 0 :(得分:0)
而不是:
app.use(express.static(__dirname + '/public'));
试试这个:
app.use(express.static(path.join(process.cwd(), '/public')));
答案 1 :(得分:0)
创建的项目与您的代码和文件结构完全相同,并且有效。确保你已经正确地写了所有文件名,并且#34;显而易见&#34;东西。如果这没有帮助,您可以提供一些错误消息吗?