Firebase Callible Function Context.Auth не определен, несмотря на правильную настройку (Unautenticated Code 16)IOS

Программируем под IOS
Ответить
Anonymous
 Firebase Callible Function Context.Auth не определен, несмотря на правильную настройку (Unautenticated Code 16)

Сообщение Anonymous »

Код: Выделить всё

your text
Привет, все,
Я нахожусь в конце концов с постоянной проблемой аутентификации с обратной функцией Firebase, которую я не могу решить, и я исчерпал все обычные подозреваемые. Я надеюсь, что кто-то видел это конкретное поведение на уровне платформы. /> Аутентификация: анонимная аутентификация Firebase. Однако, когда я называю свою функцию GeneraterCipe от клиента, используя официальный SDK, вызов постоянно терпит неудачу с ошибкой несаутентированной (кодовой 16). This triggers my if (!context.auth) check, which then correctly throws the error.
The core issue is that the authenticated state from the client isn't being passed to the function's context.
Relevant Code:
Client-Side Swift Call:
// This is inside an async function, `currentUser` is confirmed to be non-nil before this runs
do {
let functions = Functions.functions(region: "us-central1")
// The "generateRecipe" function name is correct
let result = try await functions.httpsCallable("generateRecipe").call(\["prompt": "test"\])
print("Success: (result.data ?? "No data")")
} catch {
// This catch block receives the 'UNAUTHENTICATED' (Code 16) error
print("Function call failed: (error)")
}

< /code>
server-side node.js Проверка: < /p>
// index.js
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp();

exports.generateRecipe = functions.https.onCall(async (data, context) =\> {
// This is the very first check in my function.
// It fails because `context.auth` is undefined.
if (!context.auth) {
console.log("Function rejected. Context.auth is:", context.auth);
throw new functions.https.HttpsError(
'unauthenticated',
'This operation requires authentication.'
);
}

// Logic beyond this point is never reached.
return { success: true };
});
< /code>
Что я уже пробовал (исчерпывающий список): < /p>
Я уверен, что это не простая ошибка конфигурации, так как я тщательно проверил и исправил следующие: < /p>
Инфраструктура проекта: создано несколько свежих пожарных проектов; обеспечить Firestore находится в собственном режиме и использует базу данных (по умолчанию); Исправлена ​​все начальные блокировщики развертывания (проблемы с двигателем приложений, ошибки GCF-Admin-Robot). < /p>
iam & apis: предоставлена ​​учетная запись службы функции как редактора, так и администратора Cloud Run IAM; Вручную подтвердили, что все необходимые API (идентификация инструментов, облачный запуск и т. Д.) Включено. Исправлены все ошибки в лининге/синтаксисе; Разрешенные контейнеры HealthCheck Неудача ошибок путем правильной установки переменных среды. Использование правильного и недавно загруженного Googleservice-info.plist; Полностью очищал локальную среду несколько раз (удаленная DreivedData, Simulator Reset, перезагруженный Mac). < /p>
После всего этого проблема остается идентичной. Мой вопрос:
Учитывая, что все пользовательские аспекты, по-видимому, являются правильными, что может привести к тому, что инфраструктура Firebase не передает действительный контекст AUTH для выигрываемой функции?
.>

Подробнее здесь: https://stackoverflow.com/questions/796 ... setup-unau
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»