ایا تاسو غواړئ خپل اپلیکیشن له فیسبوک سره وصل کړئ نو دا کولی شي په اوتومات ډول پوسټونه رامینځته کړي ، یا انسټاګرام ته نو تاسو کولی شئ عکسونه د ځینې هشټاګونو سره بیا پوسټ کړئ؟
تاسو کولی شئ په خپل ویب پاڼه کې د یوټیوب ویډیوګانې هم شامل کړئ. د اپلیکیشن برنامه انٹرفیس تاسو ته اجازه درکوي دا ټولې دندې ترسره کړئ او نور (APIs).
مختلف غوښتنلیکونه کولی شي له یو بل سره په خوندي او معیاري ډول "خبرې" وکړي د APIs لکه انسټاګرام API ، فیسبوک API ، او یوټیوب API څخه مننه.
په بل عبارت، یو برنامه کولی شي د سافټویر له بلې برخې څخه ځانګړتیاوې یا ډاټا واخلي او د خپلو ځانګړتیاوو یا کاروونکي تجربې ښه کولو لپاره یې وکاروي. مګر ایپس څنګه کولی شي دا غوښتنې رامینځته کړي ، پروسس یې کړي ، او په داسې فیشن کې ورته ځواب ووایی چې نور کولی شي پوه شي؟
دا پدې پورې اړه لري چې API څنګه رامینځته شوی. کله چې د API (د غوښتنلیک پروګرام کولو انٹرفیس) ډیزاینونو په اړه بحث کوئ، دا معمول دی چې د SOAP vs REST پرتله کړئ، د API دوه خورا مهم تمثیلونه.
هرڅومره ژر چې SOAP APIs (د ساده آبجیکٹ لاسرسي پروتوکول) د اوریکل ، سن ، او پی پال په څیر شرکتونو لپاره د سرو زرو معیار شو ، یو کال یا وروسته د ګوګل ، ایمیزون او ای بی څخه د REST APIs په لور مساوي او مخالف ځواب و.
پدې پوسټ کې ، موږ به د SOAP APIs د REST APIs سره پرتله او پرتله کړو نو تاسو پریکړه کولی شئ چې ستاسو د اهدافو لپاره کوم غوره دی.
موږ به د API تعریف کولو سره پیل کړو.
API څه شی دی؟
د غوښتنلیک پروګرام کولو انٹرفیس د API په توګه راجع کیږي. APIs په اصل کې د میتودونو او دندو ټولګه ده چې د ایپس پراختیا وړوي. دوی د مختلفو برنامو، خدماتو، یا عملیاتي سیسټمونو معلوماتو او دندو ته لاسرسۍ ترلاسه کوي.
دوی د مختلف سافټویر سیسټمونو ترمنځ د منځګړیتوب په توګه کار کوي. دوی د دوه غیر وصل شوي برنامو ترمینځ "خبرې کول" فعالوي.
راځئ چې د سټاک بروکر مثال واخلو چې په فعاله توګه په سوداګرۍ او مالي بازارونو کې دخیل دی. د اتوماتیک ټولګه د سوداګرۍ الګوریتم د API له لارې د سوداګر د خوښې سوداګرۍ بروکر پلیټ فارم سره وصل کیدی شي. دا تاسو ته، سوداګر ته توان درکوي چې بریښنایی لیږدونه ترسره کړئ یا د ریښتیني وخت نرخونه او د قیمتونو ډاټا وګورئ.
REST څه شی دی؟
ریښتیني "ویب خدمتونه" APIs REST (د نمایندګي ریاست لیږد) شامل دي. REST APIs په URIs کې جوړ شوي دي (د یونیفورم سرچینې پیژندونکي، چې یو آر ایل یو ځانګړی ډول دی)، د HTTP پروتوکول، او په حیرانتیا سره د براوزر سره مطابقت لرونکي JSON ډیټا بڼه.
د SOAP پروتوکول، لکه څنګه چې موږ مخکې وویل، ممکن ممکن هم وکارول شي. REST APIs رامینځته کول او وده کول اسانه کیدی شي ، مګر دوی خورا لوی او ستونزمن هم کیدی شي - دا ټول پدې پورې اړه لري چې دوی څنګه رامینځته شوي ، پراخ شوي ، او څه چې دوی یې کولو لپاره اراده لري.
د سرچینو محدودیتونه، د امنیتي اړتیاو کمول، د براوزر مراجعینو مطابقت، موندنه، د معلوماتو روغتیا، او توزیع کول ځینې دلیلونه دي چې تاسو غواړئ یو API رامینځته کړئ چې RESTful وي — هغه شیان چې واقعیا په ویب خدماتو کې پلي کیږي.
REST یو ډیر لږ وزن اختیار وړاندیز کوي. SOAP د ډیری پراختیا کونکو لپاره کارول ستونزمن او دروند وو. د مثال په توګه، د جاواسکریپټ سره د SOAP کارول د ساده عملیاتو بشپړولو لپاره ډیری کوډ لیکلو ته اړتیا لري ځکه چې د XML اړین جوړښت باید هر ځل جوړ شي.
REST (عموما) د XML غوښتنې په ځای کې مستقیم URL کاروي. که څه هم نادر شرایط شتون لري کله چې تاسو باید نور توضیحات وړاندې کړئ ، د RESTful ویب خدماتو ډیری برخه یوازې د URL تخنیک کاروي.
د HTTP 1.1 څلور فعلونه GET، POST، PUT، او DELETE د عملیاتو ترسره کولو لپاره د REST لخوا کارول کیدی شي. د SOAP برعکس، REST ځواب ته اړتیا نلري چې په XML کې وي.
د REST پر بنسټ ویب خدمتونه چې د کمانډ جلا شوي ارزښت (CSV)، جاوا سکریپټ آبجیکٹ نوټیشن (JSON)، او واقعیا ساده سنډیکیشن (RSS) فارمیټونو کې ډاټا تولیدوي (RSS).
هدف دا دی چې تاسو کولی شئ هغه پایلې ترلاسه کړئ چې تاسو ورته اړتیا لرئ په اسانه پارس فارمیټ کې په هغه ژبه کې چې تاسو یې د خپل غوښتنلیک لپاره کاروئ.
برخی
- REST د HTTP پروتوکولونو له امله ، له هرڅه پورته سادگي ټینګار کوي.
- ویب د REST لپاره غوره دی. دا د براوزرونو سره مطابقت لري ځکه چې JSON د ډیټا فارمیټ په توګه کارول کیږي.
- REST د دې د پام وړ توزیع او سرعت لپاره مشهور دی.
- د پیرودونکي-سرور اړیکې او جوړښتونه د REST APIs لخوا د لاسرسي وړ شوي. که دا آرامه وي، دا د دې مراجعینو-سرور ماډل په کارولو سره جوړ شوی، د دواړو خواوو ترمنځ د ګردي سفرونو سره د ډیټا پیلوډونه تیریږي.
- REST APIs یو واحد معیاري انٹرفیس کاروي. ډاډ ترلاسه کول چې ټول ایپسونه په مساوي ډول او د ورته دروازې له لارې وصل کیږي ، دا تنظیموي چې څنګه غوښتنلیکونه د API سره اړیکه نیسي.
SOAP څه شی دی؟
د دې خپل پروتوکول، د SOAP (د ساده اعتراض لاسرسي پروتوکول) په نوم یادیږي، د REST په پرتله یو څه ډیر پیچلی دی ځکه چې دا نور معیارونه مشخص کوي، پشمول د امنیت او پیغام رسولو پورې اړوند.
دا ارثي نورمونه د لږ څه اضافي سر سره راځي. په هرصورت، دا د سوداګرۍ لپاره پریکړه کونکی فاکتور کیدی شي چې ډیر پراخ امنیت، لیږد، او ACID (اتومي، ثبات، جلا کول، دوام) د موافقت وړتیاو ته اړتیا لري.
د دې پرتله کولو لپاره، دا مهمه ده چې یادونه وکړو چې د SOAP ډیری ګټې اکثرا د ویب خدماتو غوښتنلیکونو کې نه پلي کیږي، دوی د تصدۍ ډول سناریوګانو لپاره ډیر مناسب کوي.
د امنیت لوړې درجې (لکه کله چې a موبایل اپلیکیشن د بانک سره تعامل کوي)، د پیغام رسولو ایپس چې د باور وړ اړیکو ته اړتیا لري، د میراث سیسټمونو سره تعامل، یا د ACID اطاعت یو څو دلیلونه دي چې تاسو غواړئ د SOAP API په کارولو سره یو غوښتنلیک ډیزاین کړئ.
د SOAP لخوا وړاندیز شوي د پیغام رسولو وړتیاوې په بشپړ ډول د XML پراساس دي. د انټرنیټ نه مطابقت لرونکي زاړه ټیکنالوژي لکه د توزیع شوي اجزاو ماډل (DCOM) او د مشترک اعتراض غوښتنې بروکر آرکیټیکچر د SOAP لخوا ځای په ځای شوي کله چې دا لومړی د مایکروسافټ (CORBA) لخوا رامینځته شوی و.
په بائنری مخابراتو تکیه د دې سیسټمونو د ناکامۍ لامل کیږي. په انټرنیټ کې، د XML پیغامونه لکه د SOAP لخوا کارول کیږي غوره فعالیت کوي.
برخی
- د SOAP امنیت د پام وړ سخت دی. WS-Security یو جوړ شوی معیار دی چې د SSL ملاتړ سربیره د اړتیا په صورت کې د SOAP اضافي تصدۍ کچې امنیتي وړتیاوې وړاندې کوي.
- د باور وړ پیغام رسولو فعالیت لپاره بریالي / بیا هڅه کول. ځکه چې REST د معیاري پیغام میکانیزم نلري، دا یوازې بیا هڅه کولی شي کله چې اړیکه ناکامه شي. حتی کله چې د SOAP منځګړیتوبونه کاروي، SOAP د خپل جوړ شوي بریالي / بیا هڅه کولو منطق له امله د پای څخه تر پای پورې انحصار وړاندیز کوي.
- صابون دمخه د ACID معیارونو سره مطابقت لري. د دې په ګوته کولو سره چې څنګه لیږدونه د ډیټابیس سره تعامل کولی شي ، د ACID اطاعت ګډوډي کموي او د ډیټابیس ثبات ساتي. ځکه چې ACID د نورو معلوماتو مطابقت ماډلونو په پرتله ډیر محتاط دی، دا په مکرر ډول کارول کیږي کله چې د حساس معاملو اداره کول، که مالي یا بل ډول وي.
- دا د پروګرام کونکو لپاره د پوهیدو لپاره ساده دی ځکه چې SOAP په بشپړ ډول د XML پر بنسټ اړیکه ده.
- د XML پیغام رسولو پروتوکول د HTTP پروتوکول اضافه ده.
- له یو کمپیوټر څخه بل کمپیوټر ته ارتباطات د SOAP پیغام رسولو له لارې خپریږي.
- د پیرودونکي سرور جوړښت هم پلي کیدی شي. د SOAP پروتوکول پیغام د پیرودونکي لخوا کارول کیدی شي د لیرې پروسیجر زنګ وهلو لپاره چې د سرور اړخ کې موقعیت لري.
د REST او صابون توپیرونه
. Arch
یو API په اصل کې په سرور کې د غوښتنلیک د سوداګرۍ منطق ځانګړي برخې ښودلو لپاره دي. پداسې حال کې چې REST د ورته هدف لپاره URIs کاروي، SOAP د دې لپاره د خدماتو انٹرفیس کاروي.
REST APIs د معلوماتو وروسته رامینځته کیږي ، پداسې حال کې چې SOAP APIs د فعالیت وروسته رامینځته کیږي چې API یې روښانه کوي. د SOAP په پرتله ، کوم چې ډیر فعالیت پرمخ وړي ، REST د ډیټا لخوا پرمخ وړل شوی ډیزاین دی.
2. کیچینګ
هغه معلومات چې د کیچ ایبل په توګه په نښه شوي د براوزرونو لخوا بیا کارول کیدی شي پرته لدې چې دوی سرور ته نوې غوښتنه وکړي. د وخت او هڅې سپما د دې ګټه ده.
ځوابونه به د HTTP په کچه نه ساتل کیږي ځکه چې د SOAP پوښتنې د POST غوښتنو له لارې سپارل کیږي، کوم چې د HTTP معیار غیر غیر فعال ګڼي. که تاسو غواړئ د کیشینګ کار وکاروئ ، تاسو باید لاهم اړین تخنیکونه رامینځته کړئ ځکه چې REST APIs پدې پلي کولو کې شامل ندي.
3. سرچینې او بینډ ویت
د SOAP لخوا کارول شوي د لفافې سټایل پایلوډ لیږد له امله ، په سر کې یو معمولی زیاتوالی شتون لري ، کوم چې اضافي بینډ ویت ته اړتیا لري. د REST لږ وزن طبیعت پدې حالتونو کې ګټه ده ځکه چې دا عموما د ویب خدماتو لپاره کارول کیږي.
4. امنیت
د WS-امنیت، چې SOAP یې ملاتړ کوي او د ترانسپورت په کچه د SSL په پرتله یو څه ډیر بشپړ دی، د پام وړ دی. د دې سره د تصدۍ کچې امنیتي تدابیر شاملول هم یو مناسب فټ دی.
د SSL په کارولو سره له پای څخه تر پایه کوډ کول د دواړو SOAP او REST لخوا ملاتړ کیږي، او REST کولی شي HTTPS وکاروي، د HTTP پروتوکول خوندي ډول.
5. د پیلوډونو اداره کول
د انټرنیټ له لارې لیږدول شوي معلومات د تادیې په توګه راجع کیږي. یو تادیه چې "درنه" ګڼل کیږي اضافي سرچینو ته اړتیا لري. د SOAP په پرتله، کوم چې XML کاروي، REST اکثرا د تادیاتو کمولو کې د مرستې لپاره JSON او HTTP کاروي.
د تولید شوي کوډ سره د پیرودونکي ځانګړي کتابتون باید معمولا د پیرودونکي لخوا د SOAP APIs ته د لاسرسي لپاره وکارول شي ځکه چې د دوی خورا سخت مخابراتي تړون.
د پایلې په توګه، SOAP د REST په پرتله د کمې کچې خلاصون وړاندیز کوي او د سرور سره ډیر نږدې تړاو لري.
کله REST وکاروئ؟
- د عامه APIs رامینځته کول: REST APIs د عامه ویب خدماتو رامینځته کولو لپاره غوره کیږي ځکه چې دوی د SOAP APIs په پرتله کارول او اختیار کول اسانه ښکاري. برسیره پردې، SOAP ډیری جوړ شوي امنیتي اقدامات وړاندې کوي چې REST نلري، که څه هم دا ځانګړتیاوې اړین ندي کله چې د خلاص ډیټا او خدماتو سره کار کوي.
- د ګرځنده ایپسونو جوړول: REST د ګرځنده غوښتنلیکونو جوړولو لپاره مناسب دی ځکه چې دا کوچنی، اغیزمن، بې حالته، او د کیچ وړ دی.
- د کم سرور سرچینو او بینډ ویت کارول: د REST API ټولې غوښتنې باید بې بنسټه وي، پدې معنی چې هر تعامل جلا دی او هره غوښتنه او ځواب ټول هغه معلومات لري چې د دې تعامل بشپړولو لپاره اړین دي. سرور د پخوانیو غوښتنو ریکارډونه نه خوندي کوي ځکه چې دا هر یو د تازه غوښتنې په توګه چلند کوي. د پایلې په توګه، سرور خورا لږ حافظې ته اړتیا لري او ډیر چټک کار کوي ځکه چې غوښتنه نور عمل یا د تاریخي معلوماتو بیرته ترلاسه کولو ته اړتیا نلري.
کله صابون وکاروئ؟
- د خصوصي APIs رامینځته کول ، په ځانګړي توګه د لوی سوداګرۍ لپاره: SOAP د کارپوریټ غوښتنلیکونو لپاره مناسب دی ځکه چې دا په غیر متمرکز، توزیع شوي چاپیریال کې د معلوماتو جریان فعالوي او ډیری آنلاین امنیتي ځانګړتیاوې لري.
- د لاندې پرت په توګه د HTTP پرته بل د ټرانسپورټ پروتوکول کارول: SOAP د لاندې پرت په توګه HTTP پورې تړاو نلري. ستاسو د غوښتنلیک پورې اړه لري، تاسو کولی شئ د SMTP (د ساده میل لیږد پروتوکول)، JMS (جاوا پیغام رسولو خدمت)، یا بل ټرانسپورټ پروتوکول وکاروئ.
- د دولتي عملیاتو سره کار کول: د REST APIs د غوښتنو برعکس، د SOAP APIs ته غوښتنې بیان شوي، پدې معنی چې سرور د پیرودونکي په اړه معلومات خوندي کوي او د غوښتنو یا عملیاتو په لړۍ کې یې کاروي. حتی پداسې حال کې چې دا د سرور بینډ ویت او سرچینې ډیر کاروي، دا د معمول یا تړل شوي عملونو ترسره کولو لپاره خورا مهم دی، لکه د بانک لیږد.
پایله
د REST او SOAP APIs ترمنځ پرتله کول دا خورا روښانه کوي چې REST د SOAP څخه غوره دی. حتی لاهم، داسې شرایط شتون لري چیرې چې د SOAP API ته اړتیا ده. په ځینو مواردو کې، ویب خدمتونه د REST او SOAP APIs په یوځای کولو سره رامینځته کیږي.
نو ځکه، د کارونې قضیه به معلومه کړي چې کوم API سټایل به غوره کار وکړي.
یو ځواب ورکړئ ووځي