C# 从服务器将.js文件作为源添加到html文件中
我的服务器上有一个HTML文件,同一台服务器上有一个Javascript文件。我想要它,这样当我加载HTML文件时,它将引用服务器上放置的.js文件 我试着这样做:C# 从服务器将.js文件作为源添加到html文件中,c#,javascript,asp.net,C#,Javascript,Asp.net,我的服务器上有一个HTML文件,同一台服务器上有一个Javascript文件。我想要它,这样当我加载HTML文件时,它将引用服务器上放置的.js文件 我试着这样做: <html> <head> <script type="text/javascript src="...server side path...."></script> </head> </html> Javascript文件在
<html>
<head>
<script type="text/javascript src="...server side path...."></script>
</head>
</html>
Javascript文件在客户端上读取和执行
您需要使用客户端路径;浏览器将向该URL发送HTTP请求。使用此选项
var sc=document.createElement('script');
sc.src="script.js";
document.getElementsByTagName('head')[0].appendChild(sc);
有些时候使用像js这样的资源,css来自跨域浏览器的安全性是不允许使用的
若问题并没有解决,我不确定,但这可能会帮助你们
<script>
window.domain = "YOUR_DOMAIN.COM";
</script>
window.domain=“YOUR_domain.COM”;
我想问题可能是您不知道如何创建javascript文件的路径
如果是这种情况,最简单的方法是首先尝试将两个文件(HTML和js文件)放在同一个目录中,只使用不带路径的文件名:
<script type="text/javascript" src="somefile.js"></script>
然后,对html
中的js
文件的引用如下:
<script type="text/javascript" src="../subfolder2/somescript.js"></script>
<script type="text/javascript" src="../../someother.js"></script>
编辑:
客户端上的路径不能包含~
符号。该符号应由服务器端解析(即
标记内部)
请使用我上面描述的安全相对路径,或者使用服务器端代码创建路径(请参阅另一个问题:)以下是有关如何执行此操作的视频:
查看有关如何操作的视频:
方法1:在服务器上设置GET响应
如果您正在运行node express server,则以下是如何执行此操作:
在HTML文件中:
<script type='module' src="test.js"></script>
以下是完整代码:
const express = require('express');
const path = require('path');
const app = express();
app.use(express.static(path.resolve(__dirname, '..', 'public')));
app.get('/test.js', (req,res)=> {
res.sendFile(path.resolve(__dirname, '..', 'test.js'));
})
const port = 1000;
app.listen(port, console.log(`listening on port: ${port}`));
方法2:使用快速静态功能(参见上面的视频)
e、 g
或
现在把你的JS文件放到这个文件夹中。这允许客户端接收该文件夹中的静态文件,而无需GET请求
在HTML文档中,假设JS文件位于根目录下,它将为您加载:
<script type='module' src="test.js"></script>
方法3:将JS文件与HTML文件放在同一文件夹中
或者,只需将JS文件放在与HTML文件相同的文件夹中即可
在HTML文件中,使用以下代码:
<script type='module' src="test.js"></script>
请参阅如何操作的视频:是否因为您没有关闭“text/JavaScript”周围的引号而无法使用?只需将您的js
文件从solution explorer
拖动到head tag
,Asp.net将自己设置正确的路径。我编辑了上面的文章以获得更好的理解…我想这不是路径问题。问题出在其他地方,我找不到。请回复我编辑了上面的帖子以获得更好的理解。请回答
const express = require('express');
const path = require('path');
const app = express();
app.use(express.static(path.resolve(__dirname, '..', 'public')));
app.get('/test.js', (req,res)=> {
res.sendFile(path.resolve(__dirname, '..', 'test.js'));
})
const port = 1000;
app.listen(port, console.log(`listening on port: ${port}`));
app.use(express.static(path.resolve(__dirname, '..', 'public')));
app.use(express.static(path.resolve(__dirname, '..', 'jsFiles')));
app.use(express.static('foldername')
<script type='module' src="test.js"></script>
<script type='module' src="test.js"></script>