Javascript 当我键入文件路径(p5js)时,Chrome抛出URL错误
我正在从p5.js上的文件加载图像,浏览器(是的,所有文件)显示错误:Javascript 当我键入文件路径(p5js)时,Chrome抛出URL错误,javascript,p5.js,Javascript,P5.js,我正在从p5.js上的文件加载图像,浏览器(是的,所有文件)显示错误: URL scheme must be "http" or "https" for CORS request. 我的代码如下所示: let img; let x = 200; let y = 200; function preload() { img = loadImage("spirites/OPI.jpg"); } function setup() {
URL scheme must be "http" or "https" for CORS request.
我的代码如下所示:
let img;
let x = 200;
let y = 200;
function preload() {
img = loadImage("spirites/OPI.jpg");
}
function setup() {
createCanvas(400, 400);
image(img, 200, 200, 200, 200);
}
function draw() {
}
我不知道如何加载图像。我试着把完整的图像路径,仍然没有工作,我试着把
文件:\\\\
放在它前面,但没有成功。为什么不工作?错误试图告诉您不能通过CORS加载文件://
URL。您只能加载http://
和https://
URL。这是出于安全原因,否则页面可能会扫描整个计算机并查看所有文件,如果其中加载了恶意脚本
因此,您可能应该运行一个本地服务器,并从那里为您的应用程序提供服务。可以是一个简单的开始(您只需要免费版本-将其放入项目文件夹并启动;您可以从systray图标再次关闭它),也可以。然后,您可以相对于页面或项目根目录正常加载文件。错误试图告诉您无法通过CORS加载
文件://
URL。您只能加载http://
和https://
URL。这是出于安全原因,否则页面可能会扫描整个计算机并查看所有文件,如果其中加载了恶意脚本
因此,您可能应该运行一个本地服务器,并从那里为您的应用程序提供服务。可以是一个简单的开始(您只需要免费版本-将其放入项目文件夹并启动;您可以从systray图标再次关闭它),也可以。然后您可以正常加载文件,相对于页面或项目根目录。是否有方法从文件加载图像。我这么做很重要,不。正如我所说,您可能应该使用本地服务器为您的应用程序提供服务,然后您可以将文件放在项目文件夹中的某个位置,并通过HTTP访问它,例如
http://localhost/spirites/OPI.jpg
。(我的意思是,是有,但根据你的问题,我觉得这不是你需要去的方向,因为这是非常专门为用户授予对某些本地文件夹的访问权限。)如何为我的系统(windows)设置Caddy?Mongoose更简单。但是对于Caddy,您可以使用文件服务器
命令来运行它:-例如Caddy文件服务器--root c:\users\user\myProject--listen:3000
,然后您的应用程序就可以按照您的建议运行了?有没有办法从文件加载图像。我这么做很重要,不。正如我所说,您可能应该使用本地服务器为您的应用程序提供服务,然后您可以将文件放在项目文件夹中的某个位置,并通过HTTP访问它,例如http://localhost/spirites/OPI.jpg
。(我的意思是,是有,但根据你的问题,我觉得这不是你需要去的方向,因为这是非常专门为用户授予对某些本地文件夹的访问权限。)如何为我的系统(windows)设置Caddy?Mongoose更简单。但是对于Caddy,您可以使用文件服务器
命令来运行它:-例如Caddy文件服务器--root c:\users\user\myProject--listen:3000
,然后您的应用程序将按照您的建议提供服务?我将您的问题回滚。您不应该在收到答案后对其进行大量更改,因为这样做会使答案无效。改为问一个新问题。@c0d3r您是否使用web服务器静态地为html和js文件提供服务?(如果是这样,您可以使用类似于loadImage(“/spirites/OPI.jpg”);
。签出“我回滚了您的问题”。在收到答案后,您不应该对其进行大规模更改,因为这样做会使答案无效。请改为提出新问题。@c0d3r您是否使用web服务器静态地为html和js文件提供服务?(如果是这样,您可以使用类似于loadImage(“/spirites/OPI.jpg”);