我正在使用Nativescript 4.2.0,并尝试将图像从本地图像上传到Azure Blob存储。
推荐的大多数方法使用nativescript-background-http插件。但是,通过包含此插件,开始需要其他npm模块出现错误。我在任何地方都没有看到此报告,所以不确定我是否做错了什么,或者在
旁边还有其他命令要运行tns install nativescript-background-http
另一个插件“ nativescript-azure-storage”似乎工作正常。这需要我们对图像进行base64编码。经过Base64编码后,该图像将上传到Azure存储。但是,由于该图片现在已通过base64编码,因此无法直接在。
中使用。使用的代码:
const azureNSStorage = new nsAzureStorage.NativeScriptAzureStorage(config.AZURE_STORAGE_CONNECTION_STRING);
let path = selected.android;
const imageFromLocalFile = imageSourceModule.fromFile(path);
let base64string = imageFromLocalFile.toBase64String('png');
azureNSStorage.uploadBlob(mycontainer, blobName,
base64string)
.then(() => alert(`Uploaded successfuly`))
.catch((err) => alert(`Error uploading: ${err}`));
在Azure Blob上上传图像以便我们可以在Nativescript页面中引用它们的推荐方法是什么?
欢呼 阿布舍克
答案 0 :(得分:0)
这实际上取决于您需要什么或您的后端/服务提供商支持什么。因此,直到azure可以按预期为您工作为止,将图像转换为base64字符串没有任何问题。
nativescript-background-http
之间也应该起作用,让我们知道您在这里遇到的错误。
答案 1 :(得分:0)
检查此样本。对于Azure Blob,不接受base 64字符串。您需要发送流。 https://baskarrao.wordpress.com/2018/10/12/day-3-nativescript-post-series/