gpt4 book ai didi

node.js - html无法调用file.js

转载 作者:太空宇宙 更新时间:2023-11-04 00:48:08 25 4
gpt4 key购买 nike

我创建了我的第一个 server.js、index.html 和 test.js。当我使用node运行时,索引页面无法调用test.js

var http = require('http');
var fs = require('fs');
var server = http.createServer(function(req, res) {
fs.readFile('./index.html', 'utf-8', function(error, content) {
res.writeHead(200, {"Content-Type": "text/html"});
res.end(content);
});
});

server.listen(8080);

index.html

    <!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>PLAN</title>
<script type="text/javascript" scr="test.js"></script>
</head>
<body>
hello
</body>
</html>

测试.js

"use strict";
alert("aa1");

最佳答案

您的问题有 2 个。

  1. 不正确 <script>标签属性,从 scr 更改至src在你的index.html文件

  2. 您的服务器需要提供 javascript 文件,即 fs.readFile('./test.js') ,所以改变你的 server.js以下。

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

http.createServer(function (request, response) {
var filePath = '.' + request.url;
if (filePath == './') filePath = './index.html';

var extname = path.extname(filePath);
var contentType = 'text/html'
if (extname == '.js') contentType = 'text/javascript';

fs.readFile(filePath, function(error, content) {
response.writeHead(200, { 'Content-Type': contentType });
response.end(content, 'utf-8');
});

}).listen(8080);
console.log('Server running at http://127.0.0.1:8080/');

我认为这应该可行。

关于node.js - html无法调用file.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33737860/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com