跨域请求只支持HTTP与PreloadJS (CreateJS)
Cross Origin Request Only Supported With HTTP with PreloadJS (CreateJS)
我正在制作一个关于createJS的游戏,我在添加LoadQueue来加载图像时,我得到这个错误:
XMLHttpRequest cannot load file:///home/me/programming/assets/background.png. Cross origin requests are only supported for HTTP. createjs-2013.12.12.min.js:15
我已经搜索了这个问题,我现在知道这会发生,因为它应该在服务器上工作。然而,现在我只是在测试,所以我希望能够测试这一点,即使离线(我没有服务器)。
我已经看过针对这个问题提出的解决方案。我试过用
运行Google Chrome--allow-file-access-from-files
和
--disable-web-security
是否有一种方法来运行PreloadJS而不实际把图像放在服务器上?如果没有,我认为这将使CreateJS套件甚至HTML5作为一个整体,与允许加载本地文件的东西相比,成为一个没有吸引力的制作游戏的工具。我希望我错了,那不是真的。
正如Lanny在评论中提出的那样,从长远来看,"咬咬牙"使用本地HTTP服务器可能比以非预期的方式(如Chrome命令行参数)强制执行更容易。在处理本地url (file://
而不是http://
)时,浏览器的行为有很多不同的方式,所以从一开始就有一个"现实"的环境通常会更好。
从错误消息中的路径猜测,看起来你正在运行Mac OS X,我认为默认安装了Python 2.7,所以运行本地HTTP服务器而无需安装任何东西的一种非常简单的方法是调用:
python -m SimpleHTTPServer
在终端中,在您的CreateJS项目的根文件夹中。
相关文章:
- CreateJS:无法使tweening工作
- Createjs冲突问题localToLocal不是函数错误
- createjs动态文本重叠
- createjs:是否可以对文本进行辩护
- 如何使用其他 JavaScript 文件中的新类访问我的 createjs 导出的 js 文件
- 如果 CreateJS 库支持 Texture Packer 的 JSON 输出格式
- CreateJS - d.mousedown.f error on hitAreas
- 使用Flash CC和Createjs的子访问功能
- 在CreateJS中加载视频的最简单方法
- Createjs DomElement创建一个窗体
- 我们可以通过命令行从flash导出到createjs吗
- 停止createjs Flash动画中的所有动画
- Createjs为游戏创建计时器
- Using Createjs and Chartjs
- CreateJS的PreloadJS进度事件不准确
- 如何使用 CreateJS 的 PreloadJS 来加载图像并保留属性
- Internet explorer中的预加载声音createjs-preloadjs不起作用
- 使用PreloadJS加载图像并将它们添加到CreateJS阶段
- CreateJS中的PreloadJS不起作用
- 跨域请求只支持HTTP与PreloadJS (CreateJS)