احراز هویت
تمام وب سرویسهایی که نیاز به احراز هویت دارند، با مکانیزم JWT کار میکنند. در این مستند به نحوۀ گرفتن این توکن و استفاده از آن میپردازیم.
دریافت توکن
کافی است با داشتن username
و password
وب سرویس زیر را فراخوانی کنید.
POST/v1.1/account/jwt/create/
Request Body
{
"username": "username",
"password": "password"
}
Response Body
{
"refresh": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbl90eXBlIjoicmVmcmVzaCIsImV4cCI6MTczMjk3NzExMSwiaWF0IjoxNzMwMzg1MTExLCJqdGkiOiI5N2Y4YTM3MzI2MDA0YWMyYWM5ZTJhZjRkNTJiNmZkMyIsInVzZXJfaWQiOjE1fQ.6otx_uNIGNwL5Ol7LYSJRwkw3zRLslWZlLPhN7PFJp4",
"access": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbl90eXBlIjoiYWNjZXNzIiwiZXhwIjoxNzMyOTc3MTExLCJpYXQiOjE3MzAzODUxMTEsImp0aSI6ImU4YTI4YTU1NGUwODQ2MzA4MjUzYTAyYmNjNGM0NGVjIiwidXNlcl9pZCI6MTV9.W8brpT9jADlwIt1ZXR2zke4DFu6KQ0pJvMU96B4kHAg",
"pk": 15,
"uuid": "14f8a3fc-287f-4b80-9148-5743c3803214",
"expire_duration": 2592000,
"expires_at": "2024-11-30 18:01:51"
}
Response Codes
Status Code | Description |
---|---|
200 | return access and refresh tokens |
401 | Invalid username or password |
استفاده از توکن
مقدار فیلد access
را به صورت زیر در هدر ریکوئستها قرار دهید:
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbl90eXBlIjoiYWNjZXNzIiwiZXhwIjoxNzMyOTc3MTExLCJpYXQiOjE3MzAzODUxMTEsImp0aSI6ImU4YTI4YTU1NGUwODQ2MzA4MjUzYTAyYmNjNGM0NGVjIiwidXNlcl9pZCI6MTV9.W8brpT9jADlwIt1ZXR2zke4DFu6KQ0pJvMU96B4kHAg
سایر نکات
مدت زمان معتبر بودن توکن در ریسپانس در فیلد expire_duration
و زمان منقضی شدن آن در فیلد expires_at
آمده است. بدیهی است بعد از این زمان احتیاج به گرفتن توکن جدید هست.