צי איר ווילן צו פֿאַרבינדונג דיין אַפּ צו פאַסעבאָאָק אַזוי עס קענען דזשענערייט אַרטיקלען אויטאָמאַטיש, אָדער צו ינסטאַגראַם אַזוי איר קענען רעפּאָסט פאָטאָס מיט זיכער hashtags?
איר קען אויך ווינטשן צו אַרייַננעמען יאָוטובע ווידיאס אויף דיין וועבזייטל. אַפּפּליקאַטיאָן פּראָגראַממינג ינטערפייסיז לאָזן איר צו דורכפירן אַלע די טאַסקס און מער (אַפּיס).
פאַרשידענע אַפּלאַקיישאַנז קענען "רעדן" צו איינער דעם אנדערן אויף אַ זיכער און סטאַנדערדייזד שטייגער דאַנק צו אַפּיס ווי די ינסטאַגראַם אַפּי, Facebook API און YouTube API.
אין אנדערע ווערטער, אַ פּראָגראַם קענען נעמען פֿעיִקייטן אָדער דאַטן פון אן אנדער שטיק פון ווייכווארג און נוצן זיי צו פֿאַרבעסערן זיין אייגענע פֿעיִקייטן אָדער באַניצער דערפאַרונג. אָבער ווי קענען אַפּפּס מאַכן די ריקוועס, פּראָצעס זיי און ריספּאַנד צו זיי אויף אַ וועג אַז אנדערע קענען פֿאַרשטיין?
דאָס דעפּענדס אויף ווי די API איז באשאפן. ווען דיסקאַסינג אַפּי (אַפּפּליקאַטיאָן פּראָגראַממינג צובינד) דיזיינז, עס איז געוויינטלעך צו פאַרגלייַכן SOAP און REST, צוויי פון די מערסט באַוווסט אַפּי פּעראַדימז.
ווי באַלד ווי SOAP APIs (Simple Object Access Protocol) איז געווארן דער גאָלד נאָרמאַל פֿאַר פירמס ווי Oracle, Sun און PayPal, עס איז געווען אַן גלייך און פאַרקערט ענטפער אַ יאָר אָדער אַזוי שפּעטער צו REST APIs פֿון Google, Amazon און eBay.
אין דעם פּאָסטן, מיר פאַרגלייַכן און קאַנטראַסט SOAP APIs מיט REST APIs אַזוי איר קענען באַשליסן וואָס איז בעסטער פֿאַר דיין צוועקן.
מיר וועלן אָנהייבן מיט דיפיינינג די API.
וואָס איז אַפּי?
אַפּפּליקאַטיאָן פּראָגראַממינג צובינד איז ריפערד צו ווי אַפּי. אַפּיס זענען בייסיקלי אַ זאַמלונג פון מעטהאָדס און פאַנגקשאַנז וואָס געבן די אַנטוויקלונג פון אַפּפּס. זיי באַקומען אַקסעס צו די אינפֿאָרמאַציע און פאַנגקשאַנז פון פאַרשידענע מגילה, באַדינונגס אָדער אָפּערייטינג סיסטעמען.
זיי דינען ווי אַ סאָרט פון מידאַלמאַן צווישן פאַרשידן ווייכווארג סיסטעמען. זיי געבן "גערעדט" צווישן צוויי אַנקאַנעקטיד מגילה.
לאָמיר נעמען דעם ביישפּיל פון אַ לאַגער בראָקער וואָס איז אַקטיוולי ינוואַלווד אין טריידינג און פינאַנציעל מארקפלעצער. א זאַמלונג פון אָטאַמייטיד טריידינג אַלגערידאַמז קענען זיין קאָננעקטעד צו די טריידער ס באַליבסטע טריידינג מעקלער פּלאַטפאָרמע דורך אַן אַפּי. דאָס ינייבאַלז איר, די טריידער, צו ויספירן עלעקטראָניש טראַנזאַקשאַנז אָדער זען פאַקטיש-צייט ציטאטן און פּרייסינג דאַטן.
וואָס איז REST?
אמת "וועב באַדינונגס" אַפּיס אַרייַננעמען REST (רעפּרעסענטאַטיאָנאַל שטאַט אַריבערפירן). REST APIs זענען געבויט אויף URIs (Uniform Resource Identifiers, פון וואָס אַ URL איז אַ ספּעציעל מין), די הטטפּ פּראָטאָקאָל און די ינקרעדאַבלי בלעטערער-קאַמפּאַטאַבאַל JSON דאַטן פֿאָרמאַט.
די SOAP פּראָטאָקאָל, ווי מיר שוין סטייטיד, קען אויך זיין געוויינט. REST APIs קענען זיין גרינג צו שאַפֿן און וואַקסן, אָבער זיי קענען אויך זיין ריזיק און שווער - עס אַלע דעפּענדס אויף ווי זיי זענען באשאפן, יקספּאַנדיד און וואָס זיי זענען בדעה צו טאָן.
ריסאָרס קאַנסטריינץ, רידוסט זיכערהייט רעקווירעמענץ, בלעטערער קליענט קאַמפּאַטאַבילאַטי, דיסקאַווערד, דאַטן געזונט און סקאַלאַביליטי זענען עטלעכע סיבות וואָס איר וואָלט וועלן צו אַנטוויקלען אַן אַפּי צו זיין רעסטפול - טינגז וואָס אַקשלי אַפּלייז צו וועב באַדינונגס.
REST אָפפערס אַ מער לייטווייט אָפּציע. SOAP איז געווען שווער צו נוצן און בערדאַנסאַם פֿאַר פילע דעוועלאָפּערס. פֿאַר בייַשפּיל, ניצן SOAP מיט דזשאַוואַסקריפּט ריקווייערז שרייבן אַ פּלאַץ פון קאָד צו פאַרענדיקן פּשוט אַפּעריישאַנז זינט די נייטיק קסמל סטרוקטור מוזן זיין באשאפן יעדער מאָל.
REST (טיפּיקלי) ניצט אַ סטרייטפאָרווערד URL אין פּלאַץ פון אַ קסמל בעטן. כאָטש עס זענען זעלטן צושטאנדן ווען איר מוזן פאָרשלאָגן מער דעטאַילס, די מערהייַט פון RESTful וועב באַדינונגס נוצן בלויז די URL טעכניק.
די פיר HTTP 1.1 ווערבז GET, POST, PUT און DELETE קענען זיין געוויינט דורך REST צו דורכפירן אַפּעריישאַנז. ניט ענלעך זייף, REST דאַרף נישט זיין ענטפער אין XML.
REST-באזירט וועב באַדינונגס וואָס פּראָדוצירן דאַטן אין Command Separated Value (CSV), JavaScript Object Notation (JSON) און Really Simple Syndication (RSS) פֿאָרמאַטירונגען זענען בארעכטיגט (RSS).
די אָביעקטיוו איז אַז איר קענען באַקומען די רעזולטאטן איר דאַרפֿן אין אַן גרינג-צו-פּאַרערן פֿאָרמאַט אין דער שפּראַך איר נוצן פֿאַר דיין אַפּלאַקיישאַן.
איינריכטונגען
- REST עמפאַסייזיז פּאַשטעס אויבן אַלע אַנדערש, רעכט צו הטטפּ פּראָטאָקאָלס.
- דער וועב איז בעסטער פּאַסיק פֿאַר REST. עס איז קאַמפּאַטאַבאַל מיט בראַוזערז ווייַל JSON איז געניצט ווי די דאַטן פֿאָרמאַט.
- REST איז באַרימט פֿאַר זייַן בוילעט סקאַלאַביליטי און גיכקייַט.
- קליענט-סערווער קאַנעקשאַנז און אַרקאַטעקטשערז זענען געמאכט מער צוטריטלעך דורך REST APIs. אויב עס איז רעסטפאַל, עס איז קאַנסטראַקטאַד מיט דעם קליענט-סערווער מאָדעל, מיט קייַלעכיק טריפּס צווישן די צוויי פּאַרטיעס וואָס פאָרן דאַטן פּיילאָודז.
- REST APIs נוצן אַ יינזאַם נאָרמאַל צובינד. ינשורינג אַז אַלע אַפּפּס פאַרבינדן יונאַפאָרמלי און דורך דער זעלביקער גייטוויי, סטרימליינז ווי אַפּלאַקיישאַנז יבערגעבן מיט די אַפּי.
וואָס איז SOAP?
זיין אייגענע פּראָטאָקאָל, גערופן SOAP (Simple Object Access Protocol), איז אַ ביסל מער קאָמפּליצירט ווי REST זינט עס ספּעציפיצירט מער סטאַנדאַרדס, אַרייַנגערעכנט די שייַכות צו זיכערהייט און אָנזאָג עקספּרעס.
די טאָכיק נאָרמז קומען מיט אַ ביסל עקסטרע אָוווערכעד. אָבער, זיי קענען זיין אַ באַשטימענדיק פאַקטאָר פֿאַר געשעפטן וואָס דאַרפֿן מער ברייט זיכערהייט, טראַנסאַקטיאָן און אַסיד (אַטאָמיסיטי, קאָנסיסטענסי, אפגעזונדערטקייט, געווער) העסקעם קייפּאַבילאַטיז.
פֿאַר די צוליב פון דעם פאַרגלייַך, עס איז וויכטיק צו טאָן אַז פילע פון די בענעפיץ פון SOAP טאָן ניט אָפט אַפּלייז צו וועב באַדינונגס אַפּלאַקיישאַנז, וואָס מאכט זיי מער פּאַסיק פֿאַר ענטערפּרייז-טיפּ סינעריאָוז.
העכער זיכערהייט גראַדעס (אַזאַ ווי אַ רירעוודיק אַפּ ינטעראַקץ מיט אַ באַנק), מעסידזשינג אַפּפּס וואָס דאַרפן פאַרלאָזלעך קאָמוניקאַציע, ינטעראַקטינג מיט לעגאַט סיסטעמען אָדער אַסיד העסקעם זענען עטלעכע סיבות וואָס איר ווילט צו פּלאַן אַ אַפּלאַקיישאַן מיט אַ SOAP API.
די מעסידזשינג קייפּאַבילאַטיז געפֿינט דורך SOAP זענען לעגאַמרע באזירט אויף XML. עלטערע אינטערנעט-ינקאַמפּאַטאַבאַל טעקנאַלאַדזשיז ווי די דיסטריביוטיד קאָמפּאָנענט אָבדזשעקט מאָדעל (דקאָם) און קאָממאָן אָבדזשעקט בעטן בראָקער אַרטשיטעקטורע זענען ריפּלייסט דורך זייף ווען עס איז געווען ערשטער באשאפן דורך מייקראָסאָפֿט (CORBA).
די צוטרוי אויף ביינערי קאָמוניקאַציע ז די סיסטעמען צו פאַרלאָזן. איבער דער אינטערנעץ, XML מעסידזשינג ווי די געניצט דורך SOAP פאַנגקשאַנז בעסער.
איינריכטונגען
- די זיכערהייט פון SOAP איז באטייטיק טייטער. WS-Security איז אַ געבויט-אין נאָרמאַל וואָס אָפפערס SOAP נאָך פאַרנעמונג-מדרגה זיכערהייט קייפּאַבילאַטיז אויב דארף אין אַדישאַן צו SSL שטיצן.
- געראָטן / ווידער פּרובירן ריזאַנינג פֿאַר טראַסטווערדי מעסידזשינג פאָרשטעלונג. ווייַל REST פעלן אַ סטאַנדערדייזד אָנזאָג מעקאַניזאַם, עס קען נאָר פּרובירן ווידער ווען קאָמוניקאַציע פיילז. אפילו ווען איר נוצן SOAP ינטערמידיאַץ, SOAP אָפפערס ענד-צו-סוף פאַרלאָזלעך פאַרלאָזלעך רעכט צו זיין געבויט-אין מצליח / ריטריי לאָגיק.
- זייף שוין קאַמפּלייז מיט אַסיד סטאַנדאַרדס. דורך דיקטירן ווי טראַנזאַקשאַנז קענען ינטעראַקט מיט די דאַטאַבייס, אַסיד העסקעם מינאַמייזאַז אַנאַמאַליז און באַוואָרענען די קאָנסיסטענסי פון אַ דאַטאַבייס. ווייַל ACID איז מער אָפּגעהיט ווי אנדערע דאַטן קאָנסיסטענסי מאָדעלס, עס איז אָפט געניצט ווען אָנפירונג שפּירעוודיק טראַנזאַקשאַנז, צי פינאַנציעל אָדער אַנדערש.
- עס איז פּשוט פֿאַר פּראָוגראַמערז צו פֿאַרשטיין זינט SOAP איז אַ גאָר קסמל-באזירט קאָמוניקאַציע.
- די קסמל מעסידזשינג פּראָטאָקאָל איז אַן אַדישאַן צו די הטטפּ פּראָטאָקאָל.
- קאָמוניקאַציע פון איין קאָמפּיוטער צו אנדערן קאָמפּיוטערס קענען זיין דיסעמאַנייטאַד דורך SOAP מעסידזשינג.
- קליענט-סערווער אַרקאַטעקטשער קענען אויך זיין ימפּלאַמענאַד. א SOAP פּראָטאָקאָל אָנזאָג קענען זיין געוויינט דורך דער קליענט צו רופן אַ ווייַט פּראָצעדור רופן וואָס איז סיטשוייטיד אויף די סערווער זייַט.
דיפפערענסעס פון מנוחה ווס זייף
קסנומקס. אַרקאַטעקטשער
אַן אַפּי איז בדעה צו בפֿרט ווייַזן ספּעציפיש קאַמפּאָונאַנץ פון די געשעפט לאָגיק פון אַ אַפּלאַקיישאַן אויף אַ סערווער. בשעת REST ניצט URIs פֿאַר דער זעלביקער ציל, SOAP ניצט אַ סערוויס צובינד פֿאַר דעם.
REST APIs זענען באשאפן נאָך די דאַטן, כוועראַז SOAP APIs זענען דעוועלאָפּעד נאָך די פאַנגקשאַנאַליטי וואָס די API ילאַסטרייץ. קאַמפּערד מיט SOAP, וואָס איז מער פאַנגקשאַנז-געטריבן, REST איז אַ מער דאַטן-געטריבן פּלאַן.
2. קאַטשינג
דאַטאַ וואָס איז געווען אנגעצייכנט ווי קאַשאַבלע קענען זיין יוטאַלייזד דורך בראַוזערז ווידער אָן ריקוויירינג זיי צו מאַכן אַ נייַע בעטן צו די סערווער. שפּאָרן צייט און מי איז אַ נוץ פון דעם.
רעספּאָנסעס וועט נישט זיין קאַשט אויף די הטטפּ מדרגה זינט זייף קוויריז זענען דערלאנגט דורך POST ריקוועס, וואָס די הטטפּ נאָרמאַל דימז ניט-ידעמפּאָטענט. אויב איר ווילן צו נוצן קאַטשינג, איר מוזן נאָך בויען די נייטיק טעקניקס ווייַל REST APIs טאָן ניט אַרייַננעמען דעם ימפּלאַמענטיישאַן.
3. רעסאָורסעס & באַנדווידטה
רעכט צו דער קאָנווערט-נוסח פּיילאָוד אַריבערפירן געניצט דורך SOAP, עס איז אַ באַשיידן פאַרגרעסערן אין אָוווערכעד, וואָס דאַרף עקסטרע באַנדווידט. די לייטווייט נאַטור פון REST איז אַ נוץ אין די סיטואַטיאָנס ווייַל עס איז בכלל געניצט פֿאַר וועב באַדינונגס.
קסנומקס. זיכערהייַט
WS-זיכערהייַט, וואָס SOAP שטיצט און איז אַ ביסל מער גרונטיק ווי ססל אויף די אַריבערפירן מדרגה, איז דיזייעראַבאַל. ינקאָרפּערייטינג ענטערפּרייז-מדרגה זיכערהייט מיטלען מיט עס איז אויך אַ גאנץ פּאַסיק.
סוף-צו-סוף ענקריפּשאַן ניצן ססל איז געשטיצט דורך ביידע זייף און מנוחה, און REST קענען נוצן HTTPS, די זיכער וואַריאַנט פון די הטטפּ פּראָטאָקאָל.
5. האַנדלינג פּיילאָאַדס
דאַטן טראַנסמיטטעד דורך די אינטערנעט איז ריפערד צו ווי אַ פּיילאָוד. א פּיילאָוד וואָס איז געהאלטן "שווער" דאַרף נאָך רעסורסן. קאַמפּערד מיט SOAP, וואָס ניצט XML, REST אָפט ניצט JSON און HTTP צו פאַרמינערן די פּיילאָוד.
א ספּעשאַלייזד קליענט ביבליאָטעק מיט דזשענערייטאַד קאָד מוזן טיפּיקלי זיין געוויינט דורך דעם קליענט צו אַקסעס SOAP APIs ווייַל פון זייער גאָר שטרענג קאָמוניקאַציע קאָנטראַקט.
ווי אַ רעזולטאַט, SOAP אָפפערס אַ נידעריקער מדרגה פון אַבסטראַקציע ווי REST און איז מער ענג פארבונדן מיט די סערווער.
ווען צו נוצן REST?
- קריייטינג עפנטלעך אַפּיס: REST APIs זענען בילכער פֿאַר בנין עפנטלעך וועב באַדינונגס ווייַל זיי זענען סימפּלער צו נוצן און אַדאַפּט ווי SOAP APIs. אַדדיטיאָנאַללי, SOAP אָפפערס עטלעכע געבויט-אין זיכערהייט מיטלען וואָס REST קען נישט האָבן, כאָטש די קעראַקטעריסטיקס זענען נישט פארלאנגט ווען איר אַרבעט מיט אָפֿן דאַטן און באַדינונגס.
- קאַנסטראַקטינג רירעוודיק אַפּפּס: REST איז גאנץ פֿאַר בנין רירעוודיק אַפּלאַקיישאַנז זינט עס איז קליין, עפעקטיוו, סטייטלאַס און קאַשאַבאַל.
- ניצן קנאַפּ סערווער רעסורסן און באַנדווידט: אַלע ריקוועס צו אַ REST API מוזן זיין סטייטלאַס, וואָס מיטל אַז יעדער ינטעראַקשאַן איז באַזונדער און יעדער בקשה און ענטפער כּולל אַלע די דאַטן נייטיק צו פאַרענדיקן די ינטעראַקשאַן. דער סערווירער טוט נישט ראַטעווען רעקאָרדס פון פרייַערדיק ריקוועס זינט עס טריץ יעדער איינער ווי אַ פריש בעטן. ווי אַ רעזולטאַט, דער סערווער ריקווייערז פיל ווייניקער זכּרון און אַפּערייץ מער געשווינד ווייַל אַ בקשה טוט נישט דאַרפן ווייַטער קאַמף אָדער די ריטריוואַל פון היסטארישע דאַטן.
ווען צו נוצן SOAP?
- שאפן פּריוואַט אַפּיס, ספּעציעל פֿאַר גרויס געשעפטן: SOAP איז גאנץ פֿאַר פֿירמע אַפּלאַקיישאַנז זינט עס ינייבאַלז דאַטן לויפן אין אַ דיסענטראַלייזד, פונאנדערגעטיילט סוויווע און כּולל עטלעכע אָנליין זיכערהייט פֿעיִקייטן.
- ניצן אַ טראַנספּאָרט פּראָטאָקאָל אנדערע ווי הטטפּ ווי די אַנדערלייינג שיכטע: SOAP איז נישט אָפענגיק אויף הטטפּ ווי די אַנדערלייינג שיכטע. דעפּענדינג אויף דיין אַפּלאַקיישאַן, איר קען נוצן SMTP (Simple Mail Transfer Protocol), JMS (Java Messaging Service) אָדער אן אנדער אַריבערפירן פּראָטאָקאָל.
- ארבעטן מיט סטעיטפול אַפּעריישאַנז: אין קאַנטראַסט צו ריקוועס צו REST APIs, ריקוועס צו SOAP APIs זענען סטייטפול, טייַטש די סערווער סאַוועס אינפֿאָרמאַציע וועגן דעם קליענט און ניצט עס איבער אַ קייט פון ריקוועס אָדער אַפּעריישאַנז. אפילו כאָטש דאָס ניצט מער סערווער באַנדווידט און רעסורסן, עס איז קריטיש צו דורכפירן רוטין אָדער לינגקט אַקשאַנז, ווי באַנק טראַנספערס.
סאָף
דער פאַרגלייַך צווישן REST און SOAP APIs מאכט עס גאַנץ קענטיק אַז REST איז בילכער צו זייף. אפילו נאָך, עס זענען סיטואַטיאָנס ווו SOAP API איז פארלאנגט. אין זיכער ינסטאַנסיז, וועב באַדינונגס זענען באשאפן דורך קאַמביינינג REST און SOAP APIs.
דעריבער, די נוצן פאַל וועט באַשליסן וואָס אַפּי סטיל וועט אַרבעטן דער בעסטער.
לאָזן אַ ענטפֿערן