任何人都可以给我在移动网络钛中将图像(远程 url)转换为 base64 的想法吗?

Can any one give me ideas to convert an image (remote url) into base64 in mobile web titanium?

任何人都可以告诉我将图像(远程 url)转换为移动网络 titanium 中的 base64 的想法。我试过了

var data=Ti.Utils.base64encode(remoteUrl);

将远程 url 转换为 base64 而不是 url 中存在的图像。 谁能分享一下你的想法。

提前致谢, 斯瓦西

您使用的方法 (base64encode) 接受字符串、Blob 对象或 Filesystem.File 作为参数。您正在尝试对字符串(您的 remoteUrl)进行编码,但这并不是您真正想要的!!

您需要获取图像,然后您可以将其用作该方法的参数。所以只需要请求图片,然后将它传递给方法就可以得到你想要的。

var client = Ti.Network.createHTTPClient();
client.onload = function() {
    var base64String = Titanium.Utils.base64encode(this.responseData).getText();
};
client.open("GET", "http://your.remote.url");
client.send();

请注意,在使用 base64encode 方法后,您将拥有一个 Blob 对象。如果你想得到一个字符串,只需使用 getText 方法!

您可以找到有关正确使用 base64encode 方法的更多信息here