Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 本地文件系统中的跨源_Javascript_Google Chrome_Cors_Html5 Canvas - Fatal编程技术网

Javascript 本地文件系统中的跨源

Javascript 本地文件系统中的跨源,javascript,google-chrome,cors,html5-canvas,Javascript,Google Chrome,Cors,Html5 Canvas,我真的需要帮助。尝试制作一个小javascript程序来帮助某人进行演示。信不信由你,他的电脑几乎会因为微软的Power Point和Libre Office而消亡,因为ppt就是这么大 我一直在用大量的页面编写一个示例来使用Chrome,它的制作方式是将页面一分为二,一边是带有主演示文稿的画布,另一边是一个较小的画布,每次转换后都会显示第一个画布的副本(通过ctx2.drawImage(canvas1,0,0);) 现在,第一次运行这个程序时,我当然遇到了CORS错误的问题。我给每个图像。cr

我真的需要帮助。尝试制作一个小javascript程序来帮助某人进行演示。信不信由你,他的电脑几乎会因为微软的Power Point和Libre Office而消亡,因为ppt就是这么大

我一直在用大量的页面编写一个示例来使用Chrome,它的制作方式是将页面一分为二,一边是带有主演示文稿的
画布
,另一边是一个较小的
画布
,每次转换后都会显示第一个
画布的副本
(通过
ctx2.drawImage(canvas1,0,0);

现在,第一次运行这个程序时,我当然遇到了
CORS
错误的问题。我给每个图像
。crossOrigin=“Anonymous”
,我运行Chrome时使用
——允许从文件访问文件。这让我的计算机(包括Win10 Home和ubuntu16.04)上的东西正常工作,但一旦我给我的朋友发送了这个包,他用
--允许从文件访问文件
,它就会给出
CORS
错误

Access to image at 'file:///D:/.../image2.png' from origin 'null' has been blocked by CORS policy: Invalid response. Origin 'null' is therefore not allowed access.
我知道很多人会说把它上传到服务器上,但我们不能保证他要去的地方有互联网连接,因此有了“本地软件包”。他的Chrome是最新的(64.0.3282.186官方版本64位),我的Chrome也是最新的(Win10相同的数字,但32位,Ubuntu 56.0.2924.87 64位)。我还可以使用哪些其他选项来绕过
CORS
安全性?最好是作为命令行开关,将
bat
文件或
html
文件中的某个文件,而不让他将笔记本电脑变成web服务器或编译某些东西

编辑:根据Kosh Very的要求,这里是“极简主义者”

var canvas1;
var canvas2;
var-ctx1;
var-ctx2;
var-img=[];
onload=函数()
{
canvas1=document.getElementById(“display1”);
ctx1=canvas1.getContext(“2d”);
canvas2=document.getElementById(“display2”);
ctx2=canvas2.getContext(“2d”);
img[0]=新图像();
img[0]。crossOrigin=“匿名”;
img[0]。onload=function()
{
ctx1.drawImage(img[0],320-(img[0].宽度/2),240-(img[0].高度/2));
ctx2.drawImage(canvas1,0,0);
}
img[0].src=“image2.png”;
}


运行a-它不必位于远程位置。设置它其实并不难。
php-s localhost:8000 index.php
where
index.php
包含
粘贴在这里的HTML内容
您可能误用了
画布
。请为您的问题添加a。@NicholasKyriakides但仍有11个步骤需要完成在这种情况下,他忘记了他的笔记本电脑,但把它放在了一个U盘上。如果所有这些步骤都可以包含在一个程序中,请单击“远离”(或“活动”),那太好了。@Cryptopat
php不被识别为内部或外部命令、可操作程序或批处理文件。
@KoshVery整个过程都在我这边进行。两个Chrome实例如何工作得如此不同?运行简单本地服务器的选项: