在 mozilla 和 safari 浏览器中无法从服务器加载图像并且图像名称是阿拉伯语 format.appering ????阿拉伯文字的标记?

Image not loading from server in mozilla and safari browsers and image name is in arabic format.appering ???? marks insted of arabic text?

我正在使用 flash cs 6 和 as3。我正在从服务器加载图像。 url 是 ......./....../images/باجندوح.png。 当我在 browser.but 中输入此 url 时我正在获取图像 运行 我来自 Flash Builder 的代码出现此错误

"Error opening URL '..../...../images/باجندوح.png'
Error #2044: Unhandled IOErrorEvent:. text=Error #2036: Load Never Completed"

.image 在服务器文件夹中。在浏览器中它也在 chrome 中,但在 mozilla 和 safari 中它正在创建 problem.appering ??????阿拉伯文名称的标记。 我的代码是:

var imgUrl:String = "...../........../images/باجندوح.png";
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded);
loader.load(new URLRequest(imgUrl));
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, infoIOErrorEvent);

注意:图片名称为阿拉伯语格式..如果图片名称为英文,则可以正常工作。

可能as3看不懂阿拉伯字母,找不到路。所以你应该在你的项目中添加阿拉伯字母。

你或许可以看看这里希望它有所帮助: Arabic text in as3

问题是 URL 没有被正确解析,因为有阿拉伯语文本,它正在解析为 ??????.png。解决方案是在发送请求之前对名称的阿拉伯语部分进行编码,我能够点击图像并获得成功响应。

编码 (encodeURI) 正确地将 URL 解析为:

http://......./......./...../%D8%A8%D8%A7%D8%AC%D9%86%D8%AF%D9%88%D8%AD.png

使用以下代码:

var imgUrl:String = "http://....../..../...../";
var imgPart:String = "باجندوح";
var finalURL:String = imgUrl + encodeURI(imgPart) + ".png";
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded);
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, infoIOErrorEvent);
loader.load(new URLRequest(finalURL));

希望这能解决您的问题。