javascript - 谷歌 Firebase 的 Kindle 浏览器限制
问题描述
我正在尝试开发一个非常简单的网络应用程序并通过 Google Firebase 部署它以在我的 Kindle 上使用。虽然我在现代浏览器上运行它没有问题,但亚马逊称之为 Kindle 的非常原始的“实验浏览器”似乎无法正确显示 Firestore 数据库中的内容。这是它在现代(基于 Chromium 的)浏览器上的外观:
kindle 会像预期的那样打印它的用户代理:
Mozilla/5.0 (X11;; U; Linux armv7l; en-us) AppleWebKit/534.26+ (KHTML, like Gecko) Version/5.0 Safari/534.26+
但不是待办事项清单。
我的代码:
document.addEventListener('DOMContentLoaded', function() {
var db = firebase.firestore();
db.collection("reminders").get().then((querySnapshot) => {
querySnapshot.forEach((doc) => {
var node = document.createElement("li");
node.appendChild(document.createTextNode(`${doc.data().name}`));
document.getElementById("reminders").appendChild(node);
})
})
})
目前,我没有使用任何类型的身份验证(如果可以的话,我计划在未来这样做),所以这不是问题。
有谁知道是什么导致浏览器出现故障,我该如何解决?
解决方案
Firestore JavaScript SDK 是一个非常先进的、内存密集型的 JavaScript 库。我怀疑 Kindle 实验浏览器是否有足够的能力和内存来运行它。如果您能够在浏览器中找到 JavaScript 控制台,您可能会看到记录了哪些错误消息。但是我很难找到有关如何做到这一点的信息。
如果你继续沿着这条路走下去,你可能会度过一段艰难的时光。如果您将 Firestore 代码封装在一个简单的 HTTP(S) 端点(例如通过 Cloud Functions)中,然后从在 Kindle 浏览器中运行的更简单的 JavaScript 调用它,我希望您更有可能取得成功。
推荐阅读
- java - 在spring boot get方法中向响应json添加字段
- javascript - 自定义文本输入在 IOS 中显示自身周围的边框 - React Native
- javascript - 如何使用 ajax 在 laravel php 中使用 checbox 更新多条记录?
- c# - 每种 .NET 语言都有自己的内置库还是遵循 .NET 框架的 BCL(框架基类库)?
- python - 在 selenium python 中使用代理
- javascript - 单击按钮时如何更改标签的 ClassName ?
- amazon-ec2 - 胶水在 Docker 容器中不起作用
- python - DISCORD:使用 python 脚本删除包含黑名单单词的 Discord 消息
- python-3.x - 使用 python 打开 .exe 文件并尝试在同一个 python 脚本中传递参数
- html - HTML / CSS 结构未按预期方式运行