我的目标是将Firebase与ElasticSearch连接以进行索引,以便在我的iOS应用中搜索用户名时可以实现"喜欢"查询.从我所看到的,这是最好的解决方案,我想尽早解决这个问题,以便可扩展而不是暴力破解.
为实现这一目标,我正在尝试将Firebase开发人员为我们提供的手电筒应用程序部署到Heroku上,但我对如何去实现它感到困惑.请纠正我错在哪里,我是Heroku生态系统,ElasticSearch和nodejs的新手.
我目前有一个Heroku帐户,并且在我的计算机(Mac)上安装了toolbelt和nodejs/npm.我运行以下命令:
git clone https://github.com/firebase/flashlight
cd flashlight
heroku login
heroku create
heroku addons:add bonsai
heroku config
Run Code Online (Sandbox Code Playgroud)
(我能用heroku config命令成功获得我的盆景网址)
下一步是
heroku config:set FB_NAME=<instance> FB_TOKEN="<token>"
Run Code Online (Sandbox Code Playgroud)
但我真的不明白FB_NAME(我的猜测是火力地堡应用程序的名称,但我的应用程序的名称?或与它后面的字母/数字由于新的火力地堡的设置,其中它不再app_name.firebaseio.com但app_name-abc123.firebaseio.com),什么是FB_TOKEN ?(它是我下载的plist中的一个键还是什么?)
我在iOS上使用Swift 4编译遇到了这个问题,在启动时应用程序崩溃时出现以下消息
RLMException', reason: 'Primary key property 'serial' does not exist on object 'Book''
Run Code Online (Sandbox Code Playgroud)
我看到了类似的错误消息,但不是同一个.这就是我的对象的样子
import Foundation
import RealmSwift
class Book: Object {
dynamic var serial: String = ""
dynamic var title: String = ""
dynamic var pages: Int = 0
dynamic var genre: String = ""
override static func primaryKey() -> String? {
return "serial"
}
}
Run Code Online (Sandbox Code Playgroud)
当我通过Realm Browser应用程序检查default.realm文件时,我注意到这些条目只有#(0,1,2)并且没有数据.如果我注释掉主键,它会运行,但Realm中没有任何内容存储在此对象中.无法弄清楚为什么它会崩溃!
我想知道是否有人知道Firebase的电子邮件和密码身份验证API的官方允许密码。
到目前为止,我了解到
如果是这样的话,我这一边用于验证的正则表达式就是{6,}吗?(或者我可以检查字段的长度)
编辑:我认为它类似于Google的正常密码要求,但只需要6个字符而不是8个字符。
我正在使用 github 存储库在应用程序(特别是Player )上播放视频。我试图更好地理解代码和 AVFoundation 的总体情况:
如果我使用远程服务器 URL 视频为 AVAssetURL 设置 NSURL 并设置到 AVPlayer 的 AVPlayerItem 中,它是否从远程 URL 流式传输数据?我的猜测是,对于第一次播放来说是这样的(并且它不是一次全部下载然后播放的,如果我错了,请纠正我)
然后,如果我连续循环播放我开始播放的视频(通过在结束后将eekToTime设置为kCMTimeZero),我是否会导致AVPlayer/Asset在每次循环时连续重新流/重新下载文件?或者它会被缓存直到 AVPlayer/Asset 被释放?
如果有人可以帮助我回答或向我指出正确的 Apple 文档,我将不胜感激!谢谢!
另一个类似的(?)问题说AVAssetResourceDownloader,但我不想将文件下载到本地磁盘(如果这就是它的作用)。