با ارائه API درگاه، شما میتوانید بطور مستقیم با دیتابیس درگاه ارتباط برقرار کرده و در قالبهای دادهای JSON، XML و یا فرمتهای استاندارد دیگر اطلاعات را دریافت و مدیریت نمایبد. با API درگاه، شما میتوانید بطور مستقیم با سایر سیستم های سازمان خود ارتباط برقرار کرده و در قالبها یا فرمتهای استاندارد اطلاعات را ارسال، دریافت و مدیریت نمایید.
شروع کنید
قبل از شروع لازم است بدانید که نحوه ارائه مستندات API درگاه به این ترتیب است که به صورت کاربردی قابلیتهایی به واسطه API در اختیار شما قرار میگیرد.
ابتدا میبایست سرویسهای ما را درون نرمافزارهای خود فراخوانی کنید ما به شما یاد خواهیم داد که چگونه این ارتباط را امن نگه دارید.
با توجه به کد منحصربفردی که درگاه به منظور ارتباط با وب سرویسها تعبیه کرده میتوانید به سرویسهای ما متصل شوید و احراز هویت صورت گیرد.
ما برای تسهیل کار شما و امکانات بیشماری که شما انتظار آن را دارید خروجی و ورودی توابع را عموما بصورت مدل در نظر گرفتیم تا بتوانید هر آنچه نیاز دارید را وارد و با توجه به نیاز خود خروجی بگیرید.
ما در بخش تعریف مدل ها (References) به شما تمامی مدلها را به همراه عناصر توضیح دادهایم.
درگاه به منظور ارائه راهکاری بهینه همچنین تهیه کدی امن و تمیز نمونه کدهای ارتباط با وب سرویس را در اختیار شما قرار داده است.
در زیر مراحل احراز هویت توسط راهکار یکپارچه درگاه از طریق API توضیح داده شده است :
سرویس های مربوطه دارای یک آدرس ثابت می باشد که می بایست در پروژه مربوطه اضافه شود.
شرح | آدرس |
سرویس احراز هویت | http://localhost/Services/AuthService.svc |
سرویس نامه نگاری | http://localhost/Services/CustomerService.svc |
سیستم درگاه با توجه به امن سازی پروتکل های تبادل اطلاعاتی خود، همچنین احراز هویت کاربران و رهگیری اقدامات انجام شده بستری امن در زمینه ارسال اطلاعات را فراهم کرده همچنین شما نیز میتوانید با حفظ اطلاعات خصوصی خود از این بستر استفاده نمایید.
سرویس از نوع پروتکل SOAP می باشند.
هر متد دارای تعدادی ورودی و خروجی است.
در هر متد پارامترهای Ticket و EmployeePositionCode باید به عنوان ورودی ارسال شوند.
هر سامانه ای که قصد استفاده از سرویس را داشته باشد باید دارای یک GUID منحصر به فرد در جدول [Security].[ApplicationManagement] باشد که از قبل به سیستم درگاه معرفی شده است.
به هنگام استفاده از متد در هر سرویس نیاز است توسط نام کاربری و رمز عبور مختص کاربر و سرویس AuthService و متد SignIn یک Ticket ورودی جهت مجوز ورود دریافت شود و همچنین سمت پیش فرض کاربر از طریق سرویس CustomerService و متد GetUserEmployeePosition تحت عنوان EmployeePositionCode دریافت شود و نتیجه Ticket و EmployeePositionCode به شرح زیر به همراه پارامترهای متد به عنوان ورودی ارسال شود.
در هنگام استفاده از متدهای مورد استفاده در این مستند و پر کردن آبجکت های ورودی ممکن است نیازمند استفاده از متدهای دیگر نیز باشیم. مانند دریافت لیست گیرندگان و فرستندگان، دریافت لیست نامه های مرتبط و …
using (var customerServiceClient = new CustomerServiceClient()) using (var authServiceClient = new AuthServiceClient()) { const string username = "username"; var userModel = new FaraGostarAuthService.CredentialModel { Username = username, Password = "123456" }; var applicationGuid = new Guid("0C003558-1846-423F-98BE-87745EC77424"); var ticketModel = authServiceClient.SignIn(applicationGuid, userModel); var ticket = ticketModel.SecureTicketId; var employeePositionModel = customerServiceClient.GetUserEmployeePosition(ticket, username); var employeePositionCode = employeePositionModel.SingleOrDefault(x => x.IsDefault)?.EmployeePositionCode; var sampleResult = customerServiceClient.SomeMethod(ticket, employeePositionCode, …); }
برای استفاده از سرویس های اندیشه پرداز نیاز است قبل از هر اقدامی تعیین هویت انجام شود.
جهت استفاده از تمامی متد ها در سرویس های اندیشه پرداز، نیاز است کاربر جاری تعیین هویت شود، از متد زیر جهت احراز هویت و دریافت Ticket مجوز ورود استفاده میکنیم.
const string username = "username"; var userModel = new FaraGostarAuthService.CredentialModel { Username = username, Password = "123456" }; var applicationGuid = new Guid("0C003558-1846-423F-98BE-87745EC77424"); var ticketModel = authServiceClient.SignIn(applicationGuid, userModel); var ticket = ticketModel.SecureTicketId;