小编AMF*_*ech的帖子

Firebase:演示项目出现错误(auth/invalid-api-key)

我正在尝试使用 Firebase 客户端 sdk 编写一些自动化测试。这些测试应该使用 Firebase Auth 模拟器。为了避免搞乱生产数据,我使用带有演示项目 ID 的模拟器(如文档中所述)。

我使用以下命令启动模拟器:

firebase emulators:start --project demo-test --only functions,firestore,storage,auth
Run Code Online (Sandbox Code Playgroud)

然后在我的测试中,我使用以下命令初始化应用程序:

import { initializeApp } from 'firebase/app'
import { getAuth, connectAuthEmulator } from 'firebase/auth'

const app = initializeApp({ projectId: 'demo-test' })
const auth = getAuth(app)
connectAuthEmulator(auth, 'http://localhost:9099')
Run Code Online (Sandbox Code Playgroud)

当测试初始化​​时,我收到此错误:

 FirebaseError: Firebase: Error (auth/invalid-api-key).

    > 45 |     const auth = getAuth(app)
         |                  ^
Run Code Online (Sandbox Code Playgroud)

注意:此问题仅在身份验证时发生。我可以成功连接到 Firestore 等其他模拟器。

看来,不管文档怎么说,我实际上无法将客户端 SDK 连接到演示项目并使用 auth 模拟器。每次我尝试时,都会抛出此错误。

有人知道如何设置演示项目模拟器并将客户端 SDK 连接到身份验证模拟器吗?

javascript firebase firebase-tools firebase-authentication

8
推荐指数
2
解决办法
2890
查看次数

实时数据库模拟器忽略database.rules.json

我有一个使用实时数据库的 Firebase 项目,我正在尝试设置本地模拟器进行测试。不幸的是,Firebase-cli 似乎正在占用我的database.rules.json文件。即使在创建测试项目来解决这个特定问题之后也会发生这种情况。

让我给你一些有关我的设置的信息。

我创建了一个没有启用任何内容的 Firebase 项目。我在本地计算机上创建了一个空目录并运行firebase init database. 这样做创建了一些文件:

.firebaserc

{
  "projects": {
    "default": "emulators-test-244be"
  }
}
Run Code Online (Sandbox Code Playgroud)

firebase.json

{
  "database": {
    "rules": "database.rules.json"
  }
}
Run Code Online (Sandbox Code Playgroud)

database.rules.json(我这里修改了规则来锁定数据库)

{
  "rules": {
    ".read": false,
    ".write": false
  }
}
Run Code Online (Sandbox Code Playgroud)

当我使用运行模拟器时firebase emulators:start --only database,控制台告诉我数据库已成功初始化。但是,当我访问http://localhost:9000/.inspect/coverage?ns=emulators-test-244be查看当前加载的安全规则时,它给出以下输出:

{
    "rules": {
        ".read": true,
        ".write": true
    }
}
Run Code Online (Sandbox Code Playgroud)

显然,这直接违背了我在文件中设定的规则database.rules.json

我注意到的一件事是,如果我database.rules.json在模拟器运行时修改文件,我会从控制台得到以下输出:

i database: Change detected, updating rules for undefined...

显然,这样做会导致模拟器创建一个名为 的新数据库undefined。当我转到 时http://localhost:9000/.inspect/coverage?ns=undefined,输出正确反映了我在 …

firebase firebase-security firebase-realtime-database firebase-cli

7
推荐指数
1
解决办法
1422
查看次数

通过USB驱动器启动的自定义引导加载程序在某些计算机上产生错误的输出

我对装配很新,但我正试图深入了解低级计算的世界.我正在尝试学习如何编写将作为引导加载程序代码运行的汇编代码; 所以独立于任何其他操作系统,如Linux或Windows.在阅读了本页和其他几个x86指令集列表之后,我想出了一些汇编代码,它应该在屏幕上打印10 A然后是1 B.

      BITS 16
start: 
    mov ax, 07C0h       ; Set up 4K stack space after this bootloader
    add ax, 288     ; (4096 + 512) / 16 bytes per paragraph
    mov ss, ax
    mov sp, 4096

    mov ax, 07C0h       ; Set data segment to where we're loaded
    mov ds, ax

    mov cl, 10          ; Use this register as our loop counter
    mov ah, 0Eh         ; This register holds our BIOS instruction

.repeat:
    mov al, 41h         ; Put …
Run Code Online (Sandbox Code Playgroud)

x86 assembly usb-drive bios bootloader

6
推荐指数
2
解决办法
758
查看次数