احراز هویت با رسانیکا
ورود امن کاربران به وبسایت شما با حساب رسانیکا، بدون نیاز به پیادهسازی سیستم احراز هویت.
راهاندازی
پس از ساخت اپ و ثبت originهای مجاز، فقط اسکریپت زیر را با شناسه اپ خود به صفحه اضافه کنید:
<script
defer
src="https://rasanika.com/assets/auth-service/client.js"
data-app-id="YOUR_APP_ID"
></script>ورود و خروج
// پنجره تایید حساب را باز میکند
const auth = await window.$rasanika.auth.login();
// { userId, appId } یا undefined
console.log(await window.$rasanika.auth.get());
await window.$rasanika.auth.logout();ارسال درخواست احرازشده
متد auth.fetch توکن را تازه نگه میدارد و آن را به هدر درخواست اضافه میکند. گزینه canLogin در صورت نیاز فرایند ورود را شروع میکند.
const response = await window.$rasanika.auth.fetch(
"/api/account",
{ method: "GET" },
{ canLogin: true }
);اعتبارسنجی در سرور شما
برای کنترل دسترسی، توکن دریافتی در هدر Authorization را از سرور خود به endpoint زیر بفرستید. مقدار appId و origin پاسخ را نیز با تنظیمات اپ خود تطبیق دهید. نتیجهٔ سمت مرورگر بهتنهایی معیار امنی برای مجوزدهی نیست.
POST https://rasanika.com/api/w/auth-service/user
Authorization: Bearer ACCESS_TOKEN
X-Rsauth-Origin: https://your-app.example
// response
{
"uuid": "APP_SCOPED_USER_ID",
"appId": "YOUR_APP_ID",
"origin": "https://your-app.example",
"name": "...",
"imageUrl": "..."
}رویدادها
رویدادهای ready و حالتهای start، success و error برای عملیات login، logout، refresh و fetch روی window منتشر میشوند.
addEventListener("rasanika:auth:login-success", () => {
// update your UI
});