阅读 61

node学习---web项目部署到node服务端样式不生效的问题

问题描述:

在使用node进行服务端开发时,当把打包好的web项目部署到服务端时,css样式没有生效;

解决方案:

查阅了相关资料发现是在配置在处理html乱码时没有过滤掉静态资源;

所以只要设置静态资源不进行乱码处理就好。

 1 const fs = require("fs");
 2 const path = require("path");
 3 /**
 4  * @function handleGetRequest
 5  * @description 处理get响应数据的函数
 6  * @param {string[]} path 当前文件的路径字符串
 7  * @param {http.ServerResponse} res 响应对象
 8  * @param {boolean} isStatic 是否为静态资源
 9  * @param {object} responseHeadConfig 响应头配置对象
10  */
11 function handleGetRequest(
12   filePath = [],
13   res,
14   isStatic = false,
15   responseHeadConfig = {}
16 ) {
17   fs.readFile(path.join(__dirname, ...filePath), (err, data) => {
18     if (err) throw err;
19     // 如果是静态资源,则不进行乱码处理,直接返回
20     if (isStatic) {
21       res.end(data);
22       return;
23     }
24     res.writeHead(200, {
25       "Content-Type": "text/html;charset=utf-8", // 解决html文件乱码问题
26       ...responseHeadConfig
27     });
28     res.end(data);
29   });
30 }

有些情况可能是缓存的问题,这里不做描述;

-----end------

相关资料:

【1】;

【2】;

原文:https://www.cnblogs.com/cooperGao/p/15227382.html

文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐