【发布时间】:2020-05-04 18:51:11
【问题描述】:
我正在尝试使用 jQuery AJAX 访问 SVG 文件的内容,但在 Chrome 中不断收到相同的错误。
JavaScript
$.get("my.svg", function(data){
print(data)
})
控制台输出
[Error] jquery.min.js:4 XMLHttpRequest cannot load file:'///Users/james.jensen/Desktop/helloworld/my.svg'. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.
我确实从here 复制并粘贴了代码并对其进行了更改以适应我的情况,所以我不确定为什么我的代码会以这种方式出现故障。
提前致谢
【问题讨论】:
-
它必须是一个 http 调用。您不能使用 file:// 协议通过 ajax 加载文件/数据。
-
@abhishekkhandait 运行上述 JavaScript 的 HTML 文件与
my.svg位于同一文件夹中,因此您可以看到我使用了$.get("my.svg"...)。我相信这可以作为 HTTP 调用? -
尝试在网址中添加“/”。
$.get("/my.svg"...) -
@abhishekkhandait 我已经试过了。 Chrome 将 URL 视为
file:///my.svg。
标签: javascript jquery ajax google-chrome get