جهت استفاده از وب سرویس حارک لازم است با روال کار وب سرویس و نحوه استفاده از متدهای آن آشنا شوید.
برای این منظور بعد از ورود کاربر، 2 خروجی access_token و refresh_token دریافتی از وب سرویس را باید ذخیره نمایید تا دسترسی به متدهای وب سرویس امکان پذیر باشد. access_token در بخش هدر درخواست برای متدها ارسال خواهد شد و refresh_token برای گرفتن توکن جدید و غیرفعال کردن همه ورودهای قبلی استفاده خواهد شد.
Authorization: Bearer USER_TOKEN_VALUE
اطلاعات ورودی و خروجی وب سرویس توسط الگوریتم رمزنگاری AES کد می شوند و بدون داشتن کلید خصوصی امکان استفاده از وب سرویس وجود نخواهد داشت. جهت دریافت کلید رمزنگاری با پشتیبانی سایت تماس بگیرید.
برای مثال، در متد ورود به حساب، 2 ورودی username و password داریم که با فرمت json برای وب سرویس ارسال خواهند شد.
{
"username":"test",
"password":"123456"
}
این ورودی بعد از رمزنگاری به شکل زیر تبدیل می شود که بدون داشتن کلید اختصاصی، امکان دسترسی به محتوای آن میسر نخواهد بود.
OTRhZGEzYmQ1OTYyNTVjY4zUMJTkuSZUzXlK7otr+JY5D6iXY7WHS7RE2ExQUhTJmH85u8gPUPmvzj1K5N6K1A==
در مرحله آخر، ورودی های کد شده به این صورت POST می شود.
{
"crypt_data":"OTRhZGEzYmQ1OTYyNTVjY4zUMJTkuSZUzXlK7otr+JY5D6iXY7WHS7RE2ExQUhTJmH85u8gPUPmvzj1K5N6K1A=="
}
خروجی وب سرویس نیز با فرمت json می باشد. در صورت موفقیت آمیز بودن درخواست، اطلاعات خروجی به صورت کدشده دریافت می شود و در غیر این صورت کد و پیام خطا را مشاهده می کنید.
برای مثال خروجی وب سرویس برای خطای ورود به این صورت می باشد.
{
"code":"hark_api_auth_invalid_login_password",
"message":"\u0646\u0627\u0645 \u06a9\u0627\u0631\u0628\u0631\u06cc \u06cc\u0627 \u0631\u0645\u0632 \u0639\u0628\u0648\u0631 \u0646\u0627\u062f\u0631\u0633\u062a \u0627\u0633\u062a.",
"data":{
"status":401
}
}
در صورت موفقیت آمیز بودن ورود، مقدار crypt_data را در خروجی دریافت می کنید و مقدار status برابر 13 خواهد بود.
{
"status":13,
"crypt_data":"YTg4MzdmNjMwOTRkYTYyZJLxSifWPoynhz945HKvlEEd6pIczMGm77J1sg9MRQja3w4NCamFBVAQU79gkZl+gLAY2DLdjCs8vj3QoewGd5uSPbIs3STW0dpQTvX85yAmrVJevvf\/Hpvv+OTdZbJv2Mcr337hs2kCHpugROeta14spUa7Xo3Ki3RsC0WgHo2duOlthIEYsLyni9P0DD1ks2nJ5LEZMxnzO8GPnH69\/qkZeUme7SekXva9dZwBiLdvUYFOO3a+CV1\/IT\/0sxaTDTfi\/IXVJ90wOpcx3HiXA7jXRA\/+KAJYPRvozCR7T5BDNafnuJRJqvEUjTis+qxv9Qc7ripKZafWF3BCzFkRC+mJzML71LrndfNZAmRemLtK"
}
با استفاده از کلید اختصاصی، می توانید crypt_data را رمزگشایی نمایید و اطلاعات را مشاهده کنید.
{
"submited":true,
"user_id":11,
"access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1NTAzNDE3NjgsInN1YiI6MTF9.mCzeV3cZ7gAVSliDAom_UaFhBAVSU5beiaJHyc23YO8",
"expires_in":604800,
"refresh_token":"db1f8e0f23d8d417f67c4210003a1a0876366220acccf5e4c8cf662c31bf8b9c"
}