Javascript Processing.js将“jpg”添加到loadImage()上URL的末尾

Javascript Processing.js将“jpg”添加到loadImage()上URL的末尾,javascript,processing,Javascript,Processing,我希望我的处理草图随机从lorempixel加载图像,并将其显示给用户。我可以从Processing IDE中运行的处理中很好地做到这一点,但是当我将它与Processing.js一起使用时,它会失败 以下是我的设置: PImage img; void setup() { int x = (int) random(400,1024); int y = (int) random(400,768); String url = "http://lorempixel.com/" +

我希望我的处理草图随机从lorempixel加载图像,并将其显示给用户。我可以从Processing IDE中运行的处理中很好地做到这一点,但是当我将它与Processing.js一起使用时,它会失败

以下是我的设置:

PImage img;

void setup() {
   int x = (int) random(400,1024);
   int y = (int) random(400,768);

   String url = "http://lorempixel.com/" + x + "/" + y;
   img = loadImage(url, "jpg");
   size(x,y);
}
我在JS控制台中遇到以下错误

GET http://lorempixel.com/494/548.jpg/ 404 (Not Found) processing-1.4.1.min.js:13
   cW.loadImage processing-1.4.1.min.js:13
   setup
   b6 processing-1.4.1.min.js:13
   F.Processing processing-1.4.1.min.js:13
   Z processing-1.4.1.min.js:13
   T.X.onreadystatechange
为什么要在我的URL末尾添加一个.jpg?有没有办法以我想要的方式加载这些图像

我尝试从loadImage调用中删除额外的.jpg参数,但当我这样做时,它成功地加载了映像,然后导致程序崩溃,出现以下错误

Unable to get image data from canvas because the canvas has been tainted 
by cross-origin data.

有人能解释为什么会发生这种情况吗?

这可以帮助你。基本上,您必须启用。

此外,作为从lorempixel加载图像后程序的一部分,我计算图像的梯度,这涉及到构建一个新的PImage并逐像素填充它,然后将其显示到画布上。我不知道这是否相关,但我想这是跨来源的。我不知道如何处理。我读到的所有与此相关的示例都说您必须修改HTTP头…因为此链接是一个很好的源。顺便问一下,您使用哪台服务器来提供图像?我没有提供图像。他们来自一个名为lorempixel.com的网站,我也在其他网站上试用过,比如placekitten.com