cocos creator 1.8.1 在代码中使用了
cc.loader.load({url: remoteUrl, type: ‘jpg’}, function (err, texture) {
if (err) {
cc.error(err.message || err);
return;
}
self.iconSprite.spriteFrame = new cc.SpriteFrame(texture);
});
打包微信小程序后,res资源文件夹放在本地时,是没有问题的。如果把res文件夹放到远程资源服务器上,则在使用cc.loader.load时,加载失败,remoteUrl错了,自动在前面加了远程资源服务器的地址。例如,本来我是要加载头像地址http://abc.com/111.jpg 我的存放远程资源的服务器地址是 https://remote-res/ .当我在代码中调用cc.loader.load({url: remoteUrl, type: ‘jpg’}时,remoteUrl自动变为了https://remote-res/http://abc.com/111.jpg 导致加载失败。请问怎么解决?
在 wx-downloader.js 里面中的 downloadRemoteFile 加入
const REGEX = /\w+:\/\/.*/;// 剔除远程地址
function downloadRemoteFile (item, callback) {
// Download from remote server
var relatUrl = item.url;
// 如果是远程地址就不需要加远程资源的服务器地址
if (REGEX.test(relatUrl)) {
callback(null, null);
return
}
ok,解决问题了,谢谢
1.8.2 会修复这个问题
1.9版本还是不行,加载json又不行了,request:fail invalid url “res/import/0a/0a0b95e1e.faa74.json”
作为引擎,能不能靠谱点!
你有设置远程服务器路径吗?
