ابرووا
شروع رایگان
☰ فهرست مستندات · لینک یک‌بارمصرف

لینک یک‌بارمصرف

ورود بدون رمز عبور با ایمیل در Abrova Auth. کاربر ایمیلش را وارد می‌کند، لینک یک‌بارمصرف (۱۵ دقیقه، فقط یک بار) را باز می‌کند و وارد می‌شود؛ حساب در اولین استفاده ساخته می‌شود.

به‌روزرسانی: ۵ آبان ۱۴۰۵
لینک یک‌بارمصرف.

کاربر آدرس ایمیلش را تایپ می‌کند و یک لینک ورود دریافت می‌کند. با باز کردن لینک، همراه یک token یک‌بارمصرف به اپ شما برمی‌گردد و SDK آن را با یک نشست عوض می‌کند. رمزی برای به خاطر سپردن نیست؛ حساب اولین باری که آن آدرس وارد شود ساخته می‌شود.

راه‌اندازی در کنسول#

  1. Abrova Auth › روش‌های ورود: لینک یک‌بارمصرف را روشن کنید.
  2. Abrova Auth › تنظیمات › آدرس‌های لینک: آدرسی را که لینک باز می‌کند اضافه کنید، مثلاً https://example.com/auth/magic یا myapp://auth/magic.

در موبایل، کاری کنید که آن آدرس اپ شما را باز کند: یک custom URL scheme، یا برای آدرس https:// یک universal link در Apple یا App Link در Android.

dart
// Flutter
await AbrovaAuth.instance.sendMagicLink(email, redirectUrl: 'myapp://auth/magic');
swift
// iOS
try await AbrovaAuth.shared.sendMagicLink(email: email, redirectURL: "myapp://auth/magic")
kotlin
// Android
AbrovaAuth.shared.sendMagicLink(email, redirectUrl = "myapp://auth/magic")
typescript
// Web and React Native
await auth.sendMagicLink({ email, redirectUrl: 'https://example.com/auth/magic' });

پاسخ چه آدرس حساب داشته باشد چه نه، یکسان است. به کاربر بگویید صندوق ایمیلش را ببیند.

لینک، <redirectUrl>?token=... را باز می‌کند. token را بخوانید و وارد شوید:

dart
// Flutter: token from the incoming link
await AbrovaAuth.instance.signInWithMagicLink(Uri.parse(link).queryParameters['token']!);
swift
// iOS: pass the URL the app was opened with
try await AbrovaAuth.shared.signInWithMagicLink(url: openedURL)
kotlin
// Android: from the intent that opened the activity
AbrovaAuth.tokenFromLink(intent.dataString ?: "")?.let { AbrovaAuth.shared.signInWithMagicLink(it) }
typescript
// Web
const token = new URL(location.href).searchParams.get('token');
if (token) await auth.signInWithMagicLink({ token });

اولین ورود با یک آدرس، کاربر را می‌سازد و ایمیل را تأییدشده علامت می‌زند. لینک‌های بعدی به همان کاربر وارد می‌شوند.

قواعد#

قاعدهمقدار
اعتبار لینک۱۵ دقیقه
تعداد استفادهیک بار. باز کردن دوباره با TOKEN_INVALID شکست می‌خورد
ایمیل برای هر آدرسچند عدد در ساعت
آدرس‌های لینکفقط آن‌هایی که مجاز کرده‌اید؛ هر آدرس دیگری با INVALID_INPUT شکست می‌خورد

کاربرِ لینک یک‌بارمصرف و کاربرِ ایمیل و رمز عبور با یک آدرس، یک کاربرند: لینک مالکیت آدرس را ثابت می‌کند. کاربرانی که با Apple یا Google وارد شده‌اند جدا هستند، حتی با همان آدرس.

خطاها#

کدمعنا
TOKEN_INVALIDلینک نامعتبر است، قبلاً استفاده شده، یا بیش از ۱۵ دقیقه از آن گذشته است. لینک جدیدی بفرستید.
INVALID_INPUTایمیل معتبر نیست، یا redirectUrl جزو آدرس‌های لینک شما نیست.
RATE_LIMITEDلینک‌های بیش از حد برای این آدرس یا از این مکان. بعد از retryAfterSec دوباره امتحان کنید.
USER_DISABLEDاین کاربر را در کنسول غیرفعال کرده‌اید.
NOT_CONFIGUREDارسال ایمیل موقتاً در دسترس نیست.
METHOD_DISABLEDلینک یک‌بارمصرف برای پروژه خاموش است.
این صفحه مفید بود؟
گزارش مشکل