![](/img/trans.png)
[英]TypeError [ERR_INVALID_ARG_TYPE]: The "chunk" argument must be of type string or an instance of Buffer or Uint8Array
[英]First argument must be of type string or an instance of buffer or uint8array. Received undefined
我制作了這段代碼,在我嘗試了一切之后,它一直給我這個錯誤。
First argument must be of type string or an instance of buffer or uint8array. Received undefined
對不起,我是 Node.js 的新手,但我真的不知道我哪里出錯了。 我感謝你的幫助。
function createServer(obj){
var i;
obj.port = (obj.port || 8080);
obj.path = (obj.path || "/");
http.createServer((req, res) => {
res.writeHead(200, {'Content-Type': 'text/html'});
for(i in obj.path){
fs.readFile(i, "utf-8", (err, data) => {
if(err){
console.log(err);
}
res.write(data);
res.end();
})
}
}).listen(obj.port);
return obj;
}
您的 index.js 文件 [https://github.com/notJudahRR/Firwe/blob/main/index.js] 將路徑設置為 object:
const firwe = require("./src/index.js");
let server = firwe({
port: 8080,
path: {
"/": "index.html"
},
});
server.initServer();
然后,在 server.js [https://github.com/notJudahRR/Firwe/blob/main/src/server.js] 中,您必須正確處理:
const http = require("http");
const fs = require("fs");
const type = require("./type.js");
function createServer(obj) {
var i;
obj.port = obj.port || 8080;
obj.path = obj.path || {
"/": "index.html",
};
http
.createServer((req, res) => {
res.writeHead(200, { "Content-Type": "text/html" });
Object.values(obj.path).forEach((v) => {
fs.readFile(v, "utf-8", (err, data) => {
if (err) {
console.log(err);
}
res.write(data);
res.end();
});
});
})
.listen(obj.port);
return obj;
}
module.exports = createServer;
Object.values 在每個 object 屬性值中循環,然后獲取index.html以獲取要渲染的文件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.