首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在没有web服务器的情况下发出CORS AJAX请求?

在没有web服务器的情况下发出CORS AJAX请求?
EN

Stack Overflow用户
提问于 2018-12-11 09:10:25
回答 3查看 661关注 0票数 1

我正在开发一个网站,这个网站是由桑巴共享的,连接到一群学校的电脑上。学校的电脑是这样的,我无法访问或设置任何类型的网络服务器。我试图为网站上的所有jQuery文件创建一个页眉和页脚,但是我不能通过指向相对文件路径的标准的header请求来包含它。现在,代码如下所示

代码语言:javascript
复制
<!DOCTYPE html>

<html>

    <head>
        <meta charset="UTF-8">
        <html lang='en'> 

        <title>Test</title>

        <link rel="stylesheet" type="text/css" href="css/main.css">

        <script src="javascript/libs/jquery.js"></script>

        <div id="header"></div>

        <script> 
            $.ajaxSetup({
                crossOrigin: true
            });
          $.ajax({
            url: "file://./html-templates/header.html",
            data:{"id":header},
            type: 'GET',

            success: function(){
                console.log("Added header");
            }
        });
        </script> 

    </head>

    <body>

    </body>

</html>

头文件目前只是一些用于测试的文本:

代码语言:javascript
复制
<h2>You have successfully imported the header</h2>

这将从Firefox 63.0.3返回此错误消息:

跨源请求被阻止:相同的原产地策略不允许在file:///html-templates/toolbar.html.上读取远程资源(原因: CORS请求而不是HTTP)。

我是否可以手动将HTML从不同的文件导入到HTML文件中,而不需要web服务器来帮助我呢?

EN

回答 3

Stack Overflow用户

发布于 2018-12-11 09:14:18

对于linux用户,可以运行以下命令

代码语言:javascript
复制
google-chrome --disable-web-security --user-data-dir="/var/tmp/Chrome dev session"

这将禁用所有的安全和您将通过没有任何问题。

注意:请只在本地系统进行测试时才这样做。

票数 0
EN

Stack Overflow用户

发布于 2018-12-11 09:49:35

为了安全起见,Chrome已经禁用了它,但幸运的是,如果你使用的是相对URL,火狐就能做到这一点。

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Test</title>
    <script src="https://code.jquery.com/jquery-2.2.4.min.js"
            integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44="
            crossorigin="anonymous"></script>
    <script>
        $(function () {
            $.get("html-templates/header.html", function (data) {
                var headerText = $(data).find('h2').text();
                $('#header').text(headerText);
            });
        });
    </script>
</head>
<body>
    <div id="header"></div>
</body>
</html>
票数 0
EN

Stack Overflow用户

发布于 2018-12-11 10:29:34

路径./与您的脚本是同一个目录,您只需

代码语言:javascript
复制
url: "html-templates/header.html",
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53720723

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档