مفهوم payload چیست
مقالات تخصصی IT و هاستینگ

payload چیست و چه فرمت هایی دارد؟

در جامعه روش های مختلفی برای ارتباط با دیگران وجود دارد. مکالمات شفاهی مستقیم، ارتباط نوشتاری از طریق پیامک یا نامه و ارتباط غیرکلامی با زبان بدن، روش هایی هستند که همواره افراد با استفاده از آنها سعی در برقراری ارتباط با دیگران دارند. به طور کلی با هر روش ارتباطی، پیامی از فرستنده به گیرنده و بالعکس منتقل می شود. مشابه ارتباطات انسانی، شبکه های کامپیوتری نیز به راهی برای انتقال داده ها از فرستنده به گیرنده نیاز دارند.

در این مقاله، نحوه انتقال داده ها از طریق اینترنت با تمرکز بر payload های درون یک API، بیان شده است. ابتدا بررسی می شود که payload چیست سپس رابطه بین overhead و payload به وضوح بیان می گردد. در ادامه روش های ارتباطی مختلف مورد استفاده در یک payload درون API، بررسی می شوند.

مفهوم payload در API

تکنولوژی به سرعت در حال رشد است و به صورت روزانه فناوری های جدیدی معرفی می گردند. امروزه تصور دنیایی بدون شبکه های کامپیوتری که در پشت هر اقدامی در حال فعالیت هستند، امکان پذیر نمی باشد اما آیا تا به حال به این فکر کرده اید که چگونه اطلاعات از یک شبکه به شبکه دیگر منتقل می شوند؟

روش انتقال این اطلاعات از طریق payload درون یک API است. اما در جواب Payload چیست می توان اضافه نمود، داده هایی هستند که از طریق شبکه کامپیوتری ارسال می شوند.

payload چیست و چگونه از طریق API اطلاعات منتقل می شود؟

تصویر(1)

نمای کلی از payload در API

هنگامی که داده ها از طریق اینترنت ارسال می شوند به دو قسمت overhead و payload تقسیم خواهند شد. داده های overhead شناسه هایی هستند که برای نشان دادن منبع یا مقصد و انتقال اطلاعات مورد استفاده قرار می گیرند. از آنجایی که فقط در فرآیند انتقال به این داده ها نیاز است، اطلاعات overhead پس از رسیدن به مقصد، از پیام ارسالی حذف می گردند.

به عنوان مثال، تصور کنید پیامی با متن "سلام" را می خواهید ارسال نمایید و این متن را با "msg" (مخفف message به معنی "پیام") برچسب گذاری نموده اید. متن "سلام" به عنوان payload و "msg" به عنوان overhead ثبت می گردد. اکنون متن پیام که به عنوان payload ثبت شده، توسط اطلاعات "msg" و از طریق آدرس و مشخصاتی که overhead شناخته می شوند، برای مقصد ارسال می گردد. در مقصد تنها داده ای که برای کاربر نهایی قابل مشاهده است، متن پیام "سلام" می باشد.  برچسب "msg" فقط برای اهداف داخلی و جهت تشخیص داده ها مورد استفاده قرار می گیرند. اطلاعات payload را می توان در فرمت های مختلفی مانند JSON یا XML از طریق API ارسال یا دریافت کرد. در یک رشته کوئری، معمولاً payload را می توان با استفاده از آکولاد ({}) شناسایی نمود.

مثال های بکارگیری Payload در API

Payload ها اطلاعات اصلی موجود در بلوک داده هایی هستند که ارسال یا دریافت می کنید. حال که می دانید payload چیست، در مثال زیر نحوه انتقال و به کارگیری Payload توسط  JSON در یک API می توانید مشاهده نمایید:

POST /echo/post/json HTTP/1.1

Host: Example.com

Accept: application/json

Content-Type: application/json

Content-Length: 25

{

   "cid": 1,

   "cname": "Example",

}

در مثال مذکور، payload ها که شامل "1" و "Example" هستند، منتقل می گردند و باقی اطلاعات به عنوان header یا overhead شناخته می شوند. 

در مثال زیر می توانید انتقال payload ها را از طریق XML مشاهده نمایید:

<company>

   <cid>1</cid>

   <cname>Example</cname>

</company>

اگرچه نوع کدنویسی کمی متفاوت است اما داده های payload و overhead در دو مثال JSON و XML یکسان هستند.

فرمت های Payload چیست؟

سه نوع فرمت برای payload ها وجود دارد که در ادامه شرح داده شده اند:

  • فرمت درخواست payload در API
  • فرمت پاسخ برگشتی payload در API
  • فرمت پاسخ نامعتبر payload در API

1. فرمت درخواست payload در API

درخواست payload در API به دو پارامتر و یک عنصر فرعی نیاز دارد:

interfaceType: این مورد مشخص می کند که یک فرمت درخواست API است. interfaceType باید به صورت دستی تنظیم گردد.

methodName: متد API را برای فراخوانی تعریف می کند.

parameters: پارامترها برای فراخوانی متد، ضروری هستند.

{

   "interfaceType": "Manual",

   "methodName": "",

   "parameters": {

   }

}

2. فرمت پاسخ برگشتی payload در API

پاسخ برگشتی payload موفق، شامل یک پارامتر و یک عنصر فرعی است:

responseType: باید با مقدار "OK" تنظیم شود.

data: داده ها ممکن است فاقد اطلاعات یا اینکه شامل همه پارامترهای مورد نیاز برای پاسخ برگشتی متد فراخوانده شده، باشند.

{

   "responseType": "OK",

   "data": {

   "companyName1": "value",

   "companyName2": "value",

   "companyName3": "value"

   }

}

3. فرمت پاسخ نامعتبر payload در API

پاسخ payload نامعتبر شامل یک پارامتر و یک عنصر فرعی است:

responseType: باید روی "FAILED" تنظیم گردد.

messages: پیام ها ممکن است فاقد آرایه خاصی باشند یا اینکه همه ی آرایه ها در آن درج شوند.

{

   "responseType": "FAILED",

   "messages": [

     {

        "message": ""

     },

     {

        "message": ""

     },

     {

        "message": ""

     }

   ]

}

برقراری ارتباط توسط Payload در یک API

در شبکه های کامپیوتری، ارتباط شامل ارسال و دریافت پیام است. فرستنده پیام باید آدرس مقصد را به درستی تنظیم کند در حالی که گیرنده باید تمام منابع مورد نیاز برای پردازش پیام را داشته باشد.

جهت ارسال پیامی که به عنوان payload در API درج می گردد، باید overhead را مشخص نمایید تا پیام مورد نظر قابل تشخیص باشد. داده های overhead برای تفسیر صحیح درخواست ضروری هستند. با این اطلاعات، اکنون درک بهتری از تعاریفی نظیر payload چیست و چگونه عمل می کند، فرمت ها، نحوه به کارگیری فرمت ها و نحوه انتقال پیام ها در شبکه های کامپیوتری با استفاده از Payload های یک API دارید.

اشتراک گذاری:

نظرات

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *