本人初学node尝试了一个简单的静态服务器,仅仅返回一个拥有五张图片的页面,不过发现这五张图片的显示的不正确
var http = require(“http”), fs = require(“fs”), base = 'www/img/’, mime = require(“mime”);
http.createServer(function(req, res){ pathname = base + req.url; var type = mime.lookup(pathname); console.log(pathname); fs.exists(pathname, function(exists){ if(exists){ var file = fs.readFile(pathname, "binary", function(err, data){ if(!err){ res.setHeader("Content-Type",type); res.write(data, “binary”); res.end(); }else{ console.log(err); } }) }else{ res.writeHead(404,{"Content-Type":"text/plain"}); res.write(“Bad request 404\n”); res.end(); } }); }).listen(8080);
然后页面每一次刷新显示的图片都会不一样 这个是正确的时候 比如我再一次刷新 就会变成这样子,每一次刷新都有新的惊喜,但是看到html源码中对应的图片src都是正确的 这情况是不是因为回调冲突了这样的情况啊,求讲解。。。
@coolicer 和html文件在同一目录,图片的URL是相对定位。。我如果用node打开页面看源码哪怕图片显示的不对,可是我找到那个图片的元素结点,看它的URL,找过去却是对的,只不过显示出来的不对