如果服务器收到base64字符串并希望在转换之前检查它的长度,那么它说它总是允许最终字节数组为16KB.转换为Base64字符串时,可能会有多大的16KB字节数组(假设每个字符一个字节)?
但是,至少,它们中的一些不能正常工作,有些根本不能使用react-native.
让我们分享我们处理所有这些服务的经验.我希望,这将澄清FB对于本机应用程序有什么好处.
我目前正在尝试使用Firebase构建一个聊天应用程序,同时使用Firebase进行实时消息传递.我唯一的问题是我希望用户发送图像,我希望他们拥有带图像的配置文件,但我知道Firebase的存储空间有限(或者至少每个支付层的存储空间对于你获得的连接数量来说很低)
所以我想知道如何连接另一个数据库并在两者之间需要时进行调用.因此,当消息和图像发送时,而不是Firebase存储图像,它会将URL存储到另一个数据库中的图像.
我认为像AWS S3这样的东西是我最好的选择.任何帮助表示赞赏!
例如,假设用户将一些非常大的图像或媒体文件加载到您的Web应用程序中.当他们返回时,您希望您的应用程序显示他们之前加载的内容,但无法将实际文件数据保留在LocalStorage中,因为数据太大.
我正在使用firebase和ionic(Angular JS)创建一个应用程序,我想知道是否可以使用amazon s3来托管照片,并将url(来自s3)存储在firebase中,并将其提供给用户.我想这样做是因为firebase可能会变得昂贵.
我正在尝试创建图像的副本(位于网址),并将其保存到 Firebase 的存储设施中。我想存储实际的图像文件而不仅仅是网址。如果我理解正确的话,我首先需要将 url 处的图像转换为 blob 或文件,然后将数据上传到 Firebase 存储。
这是我目前对 Javascript 的尝试:
function savePicture(){
var url = ["http://carltonvet.com.au/sites/default/files/styles/large/public/images/article/cats.jpg"];
var blobpic = new Blob(url, {type: 'file'});
console.log(blobpic);
var user = firebase.auth().currentUser;
if (user != null) {
var userid = user.uid;
var ref = firebase.storage().ref(userid + "profilePhoto");
ref.put(blobpic).then(function(snapshot) {
console.log('Picture is uploaded!');
console.log(snapshot);
var filePath = snapshot.metadata.fullPath;
document.getElementById('picTestAddress').innerHTML = ""+filePath;
document.getElementById('picTestImage').src = ""+filePath;
});
}else{
console.log("Something went wrong, user is null.");
}
}
Run Code Online (Sandbox Code Playgroud)
我有两个这样的 HTML 标签:
<div id="picTestAddress"></div>
<img id="picTestImage" />
Run Code Online (Sandbox Code Playgroud)
我很确定这只是保存网址而不是物理图像。 …
我正在尝试将图像上传到Firebase,如下所示:
Firebase *ref = [[Firebase alloc] initWithUrl:@"https://<app-name>.firebaseio.com/posts"];
Firebase *newPost = [ref childByAutoId];
NSDictionary *newPostData = @{
@"image" : [self encodeToBase64String:image]
};
[newPost updateChildValues:newPostData];
Run Code Online (Sandbox Code Playgroud)
我正在使用此代码对图像进行编码:
- (NSString *)encodeToBase64String:(UIImage *)image {
return [UIImagePNGRepresentation(image) base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength];
}
Run Code Online (Sandbox Code Playgroud)
但是这不起作用,因为字符串超过了最大大小:
Terminating app due to uncaught exception 'InvalidFirebaseData', reason: '(updateChildValues:) String exceeds max size of 10485760 utf8 bytes:
我该怎么做才能解决这个问题?在使用Firebase时,我没有在iOS开发和图像方面找到任何在线内容.
firebase ×5
ios ×2
javascript ×2
amazon-s3 ×1
base64 ×1
chat ×1
compression ×1
expansion ×1
file ×1
filereader ×1
html5 ×1
objective-c ×1
react-native ×1
storage ×1
swift ×1
uiimage ×1