Как аутентифицировать GET-запросы в Firebase Firestore через REST API - PullRequest
0 голосов
/ 25 февраля 2020

Я хотел бы выполнять аутентифицированные GET-запросы к Firestore через REST API. Я могу успешно выполнить запрос GET, если мои правила Firestore установлены на:

service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write: if true;
    }
  }
}

Формат запроса GET, который я использую для этого, следующий:

https://firestore.googleapis.com/v1/projects/YOUR_PROJECT_ID/databases/(default)/documents/cities/LA

Однако, если я добавлю аутентификацию и изменим правила на:

service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write: if request.auth.uid != null;
    }
  }
}

, я должен иметь возможность аутентифицировать мой запрос GET. Я могу сделать запрос POST в следующем формате:

https://identitytoolkit.googleapis.com/v1/accounts:signInWithPassword?key=[API_KEY]&email=[EMAIL]&password=[PASSWORD]

Это возвращает idToken, который я хочу использовать для аутентификации моего запроса GET.

Как мне это сделать? Я попытался добавить ключ к моему запросу GET с новым idToken, но мне не повезло.

1 Ответ

0 голосов
/ 25 февраля 2020

Получив идентификационный токен, вы можете передать его в API REST, используя заголовок авторизации с токеном на предъявителя:

Authorization: Bearer ${idToken}

См. документы для получения дополнительной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...