如何使用Restify提供静态文件

时间:2013-06-13 18:10:24

标签: node.js file static restify

我正在使用节点应用程序,我需要提供静态文件(js,css)。

我的项目结构如下:

-Projectroot
     -restifyServer
         -server.js
     -frontEnd
         -index.html
         -js
         -partials
         -css

server.js不仅是它也为XML提供服务的服务器。

另外,对于服务index.html,我的路由如下:

server.get('/', getIndexhtml);

getIndexhtml回调就像:

var getIndexhtml = function indexHTML(req, res, next) {
    fs.readFile(__dirname + '/../frontendapp/index.html', function (err, data) {
        if (err) {
            next(err);
            return;
        }
        res.setHeader('Content-Type', 'text/html');
        res.writeHead(200);
        res.end(data);
        next();
});
}

当我启动服务器并将浏览器导航到“http://localhost:8080/”时,它会加载没有静态文件的HTML。

在控制台中我收到如下错误:

http://localhost:8080/js/library/jquery.js 404 (Not Found)

如何配置resitfy以提供静态文件。我尝试了this解决方案,但无法使其正常工作。

提前致谢。

2 个答案:

答案 0 :(得分:-2)

您没有提供其他静态文件,例如:“js / library / jquery.js”。我强烈建议使用express framework代替,无需手动操作即可轻松提供静态文件。

答案 1 :(得分:-2)

为静态站点安装Apache服务器怎么样?这样你就不必全力以赴了解。

让你的restify服务器为你需要的xml(你的方式)服务,并在apache中拥有你所有的客户端html,css,js文件。