سفارشیسازی SDK در Postman #
بخش customizations در فایل postman-sdk.config.json برای تغییر رفتار SDKهای تولیدشده استفاده میشود. با این بخش میتوانید جزئیات احراز هویت و رفتار ادغام کد سفارشی را کنترل کنید.
سفارشیسازی احراز هویت #
گزینههای authentication زمانی کاربرد دارند که در بخش auth روش احراز هویت API را مشخص کرده باشید. این تنظیمات به شما اجازه میدهند جزئیات header یا پیشوند token را مطابق API خود تغییر دهید.
access #
بخش access برای احراز هویت با access token سفارشی استفاده میشود؛ یعنی زمانی که در auth از حالت custom استفاده کردهاید.
به صورت پیشفرض، token در header زیر ارسال میشود:
Authorization: Bearer YOUR_TOKEN
اگر مقدار prefix را تغییر دهید، میتوانید به جای Bearer پیشوند دلخواه خود را بفرستید. مثلا اگر مقدار prefix را برابر Token قرار دهید، header به این شکل میشود:
Authorization: Token YOUR_TOKEN
apiKey #
گزینه apiKey برای تنظیم احراز هویت با API key است؛ یعنی زمانی که در auth مقدار apikey را انتخاب کردهاید.
با این گزینه میتوانید نام header مربوط به API key را عوض کنید. مثلا اگر API شما به جای X-API-KEY از header اختصاصی استفاده میکند، آن را اینجا تنظیم کنید.
{
"customizations": {
"authentication": {
"apiKey": {
"header": "MY_CUSTOM_APIKEY_HEADER"
}
}
}
}
در این حالت SDK هنگام ارسال درخواست، کلید API را با همان header سفارشی ارسال میکند.
customCode #
بخش customCode برای زمانی است که SDK را چند بار تولید میکنید اما میخواهید تغییرات دستی خودتان در فایلهای تولیدشده حفظ شود. این تنظیمات مشخص میکنند Postman تغییرات را ردیابی کند یا تولید تمیز و کامل انجام دهد.
{
"sdk": {
"customCode": {
"trackChanges": true,
"conflictStrategy": "mark",
"noMerge": false
}
}
}
trackChanges #
وقتی trackChanges برابر true باشد، generator تغییرات محلی شما را تشخیص میدهد و برای ادغام در تولید بعدی در نظر میگیرد.
اگر آن را false کنید، تولید SDK به صورت تمیز انجام میشود و فایلها بازنویسی میشوند.
معادل CLI:
--no-track-changes
conflictStrategy #
اگر هم شما و هم generator یک بخش مشترک از فایل را تغییر داده باشید، conflictStrategy تعیین میکند تعارض چطور حل شود.
| مقدار | رفتار |
|---|---|
mark |
علامتهای conflict را داخل فایل میگذارد تا دستی حل کنید. |
ours |
تغییرات شما را نگه میدارد و تغییرات generator را کنار میگذارد. |
theirs |
تغییرات generator را نگه میدارد و تغییرات شما را کنار میگذارد. |
معادل CLI:
--conflict-strategy <strategy>
گزینههای CLI همیشه بر مقدار فایل پیکربندی اولویت دارند. مثلا اجرای دستور زیر فقط برای همان اجرا strategy را عوض میکند:
postman sdk generate --conflict-strategy theirs
noMerge #
اگر noMerge برابر true باشد، فرایند merge انجام نمیشود و SDK به صورت تمیز دوباره تولید میشود. این حالت برای زمانی مناسب است که میخواهید خروجی کاملا تازه بسازید و نگهداری تغییرات قبلی مهم نیست.
معادل CLI:
--no-merge
منبع آموزشی: Postman Docs، بازنویسی و سادهسازیشده برای کاربران فارسیزبان.

