javascript - 样式表 - 不加载网页

标签 javascript html css

我正在运行 nodejs 的本地副本,并获取了一些运行 Web 服务并引用本地 index.html 的代码。在启动时。此服务在我的桌面上本地运行。

我一直在研究 CSS,发现无论我做什么,样式表都不会加载,从样式表中获取配置并将其放在某个 <style> 中。元素工作正常。但出于某种原因,它没有读取样式表。

样式表的位置是:c:\program files\nodejs\default.css

HTML代码:

<link rel="stylesheet" type="text/css" href="default.css" />

这与 index.js 位于同一位置, index.html .具有读取文件的权限等。

关于为什么这可能无法加载的任何想法。

index.js代码:

var http = require('http');
var fs = require('fs');

http.createServer(function (req, res){    
    fs.readFile('index.html', function (err, data){
        res.writeHead(200, {
                    'Content-Type': 'text/html',
                    'Content-Length' : data.length
        });
        res.write(data);
        res.end();
    });
}).listen(1337, '127.0.0.1');

最佳答案

您的服务器:

http.createServer(function (req, res){
   fs.readFile('index.html'

...配置为忽略请求中的所有内容并始终返回 index.html 的内容。

因此,当浏览器请求样式表时,它会得到 index.html

您需要注意路径(将在请求中)并提供适当的内容(对于提供静态文件意味着将其映射到文件系统,确定文件是否存在,然后加载该文件文件或 404 消息),以及适当的内容类型(因此您需要为每种文件确定类型)和状态代码。

这是一项重要的工作,不值得重新发明轮子,因此最好通过为 Node 找到一个静态文件服务模块(Google 出现 node-static)(或用 Lighttpd 或 Apache HTTPD)。

如果您想同时提供动态内容和静态内容,那么 Express是一个受欢迎的选择(并且有 support for static files )。

关于javascript - 样式表 - 不加载网页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33691701/

相关文章:

javascript - 需要 JQuery 弹出/警报

javascript - 按钮类型重置不适用于默认值

javascript - 电子邮件表单验证 - 确保它只有一个 '@' 符号

javascript - 如何通过jQuery用replace方法更新textarea

javascript - 如何使用 glyphicon bootstrap 更改按钮文本并保留顺序?

javascript - 如何使用代码为我的div中的文本添加颜色

javascript - 不工作 : <form onsubmit ="alert(event.shiftKey)"> on Javascript

javascript - jquery 中是否有类似 indexof() 的方法?或者怎么做?

html - 如何根据不同的手机屏幕尺寸制作CSS?

Jquery - 获取两个 Div 标签之间的文本