Како тестирати и играти се помоћу веб АПИ-ја на једноставан начин са поштаром

У свету у којем статичне веб локације и апликације све више зависе од одвојено одржаваних АПИ-ја, тешко је докучити како функционишу само играњем у прегледачу.

Па како можемо да користимо Постман да тестирамо наше постојеће АПИ-је и разумемо како они функционишу?

  • Шта је поштар?
  • Шта ћемо градити / учити?
  • Део 0: Уговарање поштара
  • 1. део: Увод у поштара
  • 2. део: Стварање новог захтева поштара за ДОБИЈАЊЕ информација о Скуиртле-у
  • Део 3: Стварање збирке захтева у Поштару за ПокеАПИ
  • Део 4: Подношење ПОСТ захтева са поштаром да преведе реченице како би звучале као Иода
  • Део 5: Аутентификација захтева за Лорд оф тхе Рингс АПИ помоћу АПИ кључа

Шта је поштар?

Поштар је алат који тимови могу користити за поуздано тестирање АПИ-ја користећи једноставне конфигурације. Опремљен је функцијама које бисте очекивали када се бавите АПИ-јевима, укључујући потврду идентитета, подешавање заглавља, прилагођавање корисног терета и гомилу других које помажу у смањењу трења коришћења АПИ-ја.

И није само за тестирање. Лепота је у томе што се ово може користити за многе аспекте рада са АПИ-има за многе различите чланове тима. Можда менаџер пројекта жели да потврди да ствари функционишу или ће му бити лакше да изврши промену директно са АПИ-јем, или КА инжењер треба да се увери да све и даље ради, или програмер жели да активно врши промене током рада на самом АПИ-ју .

Најбољи део о томе - поштар пружа функције за сарадњу. Бесплатни ниво укључује извоз и увоз колекција сачуваних АПИ захтева, као и стварање дељених веза. Ако сте део тима, они имају плаћене нивое који вам омогућавају да синхронизујете своје колекције како бисте били сигурни да сви имају најновију и најновију колекцију.

Шта ћемо градити / учити?

Прошетаћемо кроз два различита примера АПИ-ја да бисмо покрили концепте Поштара.

Прво ћемо проћи кроз неке једноставне ХТТП захтеве са јавним АПИ-јем за Покемон.

Затим ћемо користити Иода Транслатор АПИ за један део да демонстрирамо како да направимо одређене ХТТП захтеве.

Једном када схватимо како функционишу основе, користићемо Лорд оф тхе Рингс АПИ да бисмо сазнали како аутентификација функционише са АПИ-јевима. Да бисте то урадили, мораћете да се региструјете за бесплатни налог за АПИ кључ.

Део 0: Уговарање поштара

Пре него што започнемо, биће вам потребан поштар да бисте наставили са овим упутством. Добра вест је да је Поштар доступан бесплатно на Мац-у, Виндовс-у и Линук-у, тако да бисте могли да пронађете верзију која вам одговара.

Набавите поштара: //ввв.постман.цом/довнлоадс/

Једном преузето, прођите кроз стандардна упутства за инсталацију, отворите га и требали бисмо бити спремни!

1. део: Увод у поштара

Када први пут отворите Поштара, одмах ће вам се приказати лансирна рампа са гомилом опција за почетак.

Можда делује помало неодољиво, али хајде да разбијемо неке од кључних концепата које ћемо морати знати.

Захтеви

Захтев је некако онакав како звучи, то је специфичан АПИ захтев. Ово ће бити појединачна врста захтева, било да се ради о ГЕТ или ПОСТ до одређене крајње тачке. Морали бисте створити нове захтеве за сваку врсту крајње тачке који ће вам омогућити да се крећете између њих приликом тестирања.

Колекције

Колекција је група захтева. Ово је згодно за организовање ваших захтева у различите групе. Ово може бити једноставно као два потпуно различита АПИ-ја (тј. Твиттер вс Слацк) или две различите групе АПИ-ја за један АПИ (тј. Твиттер Твеетс АПИ вс Твиттер Аццоунтс АПИ).

Овлашћење

Овлашћење је начин на који се аутентификација захтева врши помоћу АПИ-ја, било да је особа која подноси захтев или рачунар који тај захтев подноси у ваше име. Ово се обично испоручује у облику АПИ кључа који може бити статичка вредност додељена вашем налогу или динамички генерисана помоћу алата попут ОАутх.

Окружења

Окружења ће вам омогућити да своје крајње тачке конфигуришете тако да користе одређене променљиве које олакшавају употребу истих крајњих тачака између различитих окружења. На пример, можда имате исту /profileкрајњу тачку и у производном и у развојном окружењу, али они имају различите домене. Окружења вам омогућавају управљање једним захтевом са променљивим доменом.

Радни простори

У овом посту нећемо ићи предалеко у радне просторе, али вам омогућава управљање и организовање различитих скупова колекција. Замислите ако желите да поштара користите и за посао и за лични пројекат, можда имате радни радни и лични радни простор.

За потребе овог чланка покриваћемо захтеве, наплате и овлашћења.

2. део: Стварање новог захтева поштара за ДОБИЈАЊЕ информација о Скуиртле-у

Сад кад боље разумемо различиту терминологију, хајде да уствари направимо захтев.

У горњем левом углу корисничког интерфејса требало би да видите само наранџасто дугме са натписом Ново . Само напред и кликните на то, а затим изаберите Захтев .

Пре него што уђемо у сам захтев, он захтева неколико ствари.

Прво што треба је име. За почетак ћемо тражити информације о Покемон Скуиртле, па назовимо ово „Покемон - Скуиртле“.

Такође захтева колекцију, па кликните Креирај колекцију и назовимо колекцију „Мој омиљени Покемони“.

Кликните на наранџасто дугме поред имена колекције, а затим притисните Саве .

У овом тренутку имаћемо нови захтев, па хајде да га направимо.

Две ствари ћемо прво морати испунити за први захтев:

  • Тип захтева: ГЕТ, ПОСТ, ПУТ итд. - користићемо ГЕТ
  • УРЛ захтева: крајња тачка за ваш захтев за АПИ - за наш захтев ћемо користити //покеапи.цо/апи/в2/покемон/скуиртле/

А када се уверите да су тачне, можете једноставно притиснути плаво дугме Сенд са десне стране и успешно смо поставили први захтев!

Одмах добијамо неколико ствари које можемо видети:

  • Тело: на дну би сада требало да видимо тело одговора на захтев за АПИ. За наше скуиртле АПИ, требало би да имамо ЈСОН објекат са подацима као што су abilities, base_experience, и forms.
  • Статус: с десне стране требали бисмо видети ХТТП статусни код. „200 Ок“ је добар знак и значи да је био успешан!
  • Време: једноставно колико је дуго трајало да се захтев заврши
  • Величина: величина података о одговору у КБ (у нашем примеру)

Такође можете да задржите показивач изнад статуса, времена и величине и да детаљније погледате сваку опцију.

Зато смо упутили први захтев!

Једино што треба приметити пре него што кренемо даље је да наш захтев изгледа као да је на картици прегледача. Ако завршимо са тим одређеним захтевом, можемо да затворимо картицу и кликнемо на Сачувај да бисмо се уверили да су све наше промене ту за следећи пут!

Део 3: Стварање збирке захтева у Поштару за ПокеАПИ

Сада када смо креирали захтев, хајде да креирамо њихову колекцију. Технички смо већ морали да направимо нову колекцију за Други део, али створићемо нову да бисмо научили како саме колекције функционишу.

У горњем левом углу корисничког интерфејса поново кликните на наранџасто дугме Ново и изаберите Збирка .

Слично захтеву, тражи име, па назовимо ово „ПокеАПИ“. По жељи можете додати опис, а затим кликнути на Створи на дну.

Са леве стране ћете сада видети своју колекцију. Можете да изаберете и проширите фасциклу јер ћемо радити са њом.

Пре него што додамо захтев, ПокеАПИ има различите врсте захтева, па има смисла да га мало детаљније организујемо. Па, хајде да кликнемо на три тачке поред ПокеАПИ колекције и изаберите Додај фасциклу .

Слично осталим, и овде се тражи име. Фасцикле су некако попут колекција унутар колекције, тако да имате сличне опције. Назовимо овог „Покемон“ и кликните на наранџасто дугме „ Саве“ као раније.

Сад додајмо наше захтеве! Прво кликните три тачке поред мапе Покемон, слично као што смо додали фасциклу у колекцију, али овог пута изаберите Додај захтев .

Назовимо овај захтев „Покемон“. Иако би могло бити збуњујуће да имамо Покемон захтев унутар Покемон фасцикле, Покемон је само једна од крајњих тачака Покемон групе.

Сада, употребимо исти тачни АПИ који смо користили са нашим захтевом за Скуиртле пре:

  • Тип захтева: ГЕТ
  • Захтевај УРЛ: //покеапи.цо/апи/в2/покемон/скуиртле/

И слично као раније, када притиснемо плаво дугме Сенд , требало би да видимо успешан захтев!

Сада да додамо још један захтев. Следите исти поступак као и пре, како бисте креирали нови захтев у фасцикли ПокеАПИ Покемон и назовимо овај захтев „Способности“.

Ако се померите кроз одговор од прве Скуиртле крајње тачке, видећете пуно других АПИ УРЛ адреса. На врху имамо abilitiesи имамо два различита - „бујица“ и „киша“.

Изаберите своју омиљену способност веверица и копирајте urlвредност у нови захтев за способности који смо управо креирали, а користићу rain-dish.

Тип захтева можемо оставити као ГЕТ, притиснути плаво дугме Сенд и поново ћемо видети успешан одговор!

Овде добијамо много информација о нашој способности веверица за кишу, а неки детаљи долазе на различитим језицима, што је супер!

Дакле, сада имамо нову ПокеАПИ колекцију са Покемон фасциклом која представља групу Покемон АПИ крајњих тачака, укључујући Покемон и способности.

Зауставићемо 3. део са та два захтева, али слободно наставите и додајте онолико захтева за ПокеАПИ колико желите!

Део 4: Подношење ПОСТ захтева са поштаром да преведе реченице како би звучале као Иода

До сада смо упућивали само ГЕТ захтеве, али шта ако бисмо желели да упутимо ПОСТ захтев тамо где заправо треба да пошаљемо неке податке?

За постављање ПОСТ захтева користићемо Иода Транслатор АПИ са фунтранслатионс.цом. Иако овај АПИ узима само један параметар, то је и даље добра јавна крајња тачка коју можемо користити за разумевање концепта.

Прво креирајмо нову колекцију са новим захтевом:

  • Колекција: Забавни преводи
  • Захтев: Иода

Овај пут, уместо ГЕТ захтева, наша конфигурација захтева биће:

  • Тип захтева: ПОСТ
  • Захтевај УРЛ: //апи.фунтранслатионс.цом/транслате/иода

Овај пут, ако притиснемо плаво дугме Сенд , приметићемо да нећемо добити успешан одговор 200, добићемо 400!

Заправо никада нисмо поставили било какве податке за објављивање у АПИ-у и они их захтевају, па хајде да их додамо.

Одмах испод УРЛ-а захтева кликните Боди . Затим уместо ниједног, као тип каросерије одаберите сирово . На крају, крајње десно од типова, промените Тект у ЈСОН .

Затим, у простор испод њега можете додати следеће:

{ "text": "Hello, I am learning how to test APIs with Postman!" } 

А сада поново кликните плаво дугме Пошаљи и добићемо успешан одговор!

Овај концепт можемо применити на скоро сваки АПИ. Поштар вам не дозвољава само постављање ЈСОН-а, већ вам омогућава да користите друге формате за које видимо да су наведени у одељку Боди Типе, што значи да имате пуно опција у зависности од тога шта АПИ који користите захтева.

Део 5: Аутентификација захтева за Лорд оф тхе Рингс АПИ помоћу АПИ кључа

За остатак корака ћемо користити Лорд оф тхе Рингс АПИ.

Прво, Лорд оф тхе Рингс АПИ захтева потврду идентитета како би подносио захтеве помоћу АПИ кључа. Дакле, за почетак ћете морати да кренете са креирањем бесплатног налога пре него што заронимо.

//тхе-оне-апи.херокуапп.цом/сигн-уп

Једном када се пријавите и пријавите, прво што ћете видети је ваш АПИ кључ! Или копирајте овај тастер или се сетите где ћете га касније пронаћи. Ако напустите страницу, увек је можете зграбити тако што ћете у навигацији на АПИ веб локацији отићи до Добродошли, а затим Рачун .

Да започнемо, прво креирајмо нову колекцију и захтевајмо:

  • Колекција: Господар прстенова
  • Мапа: Филм
  • Захтев: Сви филмови
  • Тип захтева: ГЕТ
  • Захтевај УРЛ: //тхе-оне-апи.херокуапп.цом/в1/мовие

Једном када се подесите са горенаведеним, кликните на Пошаљи и одмах ћете приметити да даје одговор који каже 401 и да није овјерен.

Будући да овај АПИ захтева АПИ кључ, управо смо то очекивали. Па, хајде да кликнемо на картицу Ауторизација . Затим можемо да одаберемо тип жетона на доносиоца , а с десне стране можемо да залепимо свој кључ који смо управо поставили помоћу АПИ-ја Лорд оф тхе Рингс.

А чим притиснемо Сенд , сада видимо успешан одговор!

Ово је заиста добро функционисало, али шта ако имамо гомилу захтева који користе један кључ. Морамо ли то управљати на сваком захтеву?

Уместо да управљамо њиме на сваком појединачном захтеву, можемо да управљамо њиме на колекцији. Хајде да прво направимо још један захтев.

У нашој колекцији Господара прстенова и у директоријуму Филм креирајте нови захтев:

  • Захтев: Цитирање према ИД-у филма
  • Тип захтева: ГЕТ
  • Захтевај УРЛ: //тхе-оне-апи.херокуапп.цом/в1/мовие/{ид}

У овом захтеву, употребимо ИД из одговора на први захтев, користићу 5cd95395de30eff6ebccde5bкоји је ИД Две куле, па ће УРЛ захтева изгледати овако:

//the-one-api.herokuapp.com/v1/movie/5cd95395de30eff6ebccde5b

Сада, уместо да поставимо наш токен у захтеву Ауторизација, оставићемо тип као Инхерит аутх од родитеља . Кликните на три тачке поред колекције и изаберите Уреди .

Овде ћемо урадити исто оно што смо урадили са првим захтевом, али на конфигурацији колекције. Изаберите картицу Ауторизација , под типом одаберите Токен носиоца и у поље Токен поново налепите свој токен.

На крају, кликните Ажурирај и поново притисните плаво дугме Пошаљи и видећемо успешан захтев!

Сада се можемо вратити на наш захтев за све филмове и ажурирати ауторизацију да бисмо користили тип наслеђивања од родитеља и то би и даље требало да функционише!

Шта још можемо да урадимо са поштаром?

Иако сам обрадио пуно основа, са поштаром можете учинити још много тога. Ево неколико мојих омиљених.

Променљиве околине

Ако радите као програмер на пројекту, вероватно је да ваш тим користи више окружења, попут развојног и производног окружења. Уместо да креирате и одржавате потпуно одвојене захтеве, можете додати променљиву окружења и уместо те променљиве променити је приликом пребацивања између окружења!

Променљиве се примењују на многе сценарије, али то је уобичајена употреба. Погледајте поштареве документе да бисте сазнали како.

//леарнинг.постман.цом/доцс/постман/вариаблес-анд-енвиронментс/вариаблес/

Увоз и извоз колекција и података

Сјајна ствар код Поштара је што када све захтеве организујете, можете их извозити да би их други могли користити. То такође значи да колекције можете да увезете од других чланова тима. Тако је много лакше осигурати да сви користе исту колекцију.

Бонус: ове датотеке можете чак да складиштите у Гит спремишту, јер су само ЈСОН.

Али имајте на уму - ако користите ауторизацију на колекцији као што смо описали у овом водичу, побрините се да то не укључите приликом извоза колекције.

//леарнинг.постман.цом/доцс/постман/цоллецтионс/импортинг-анд-екпортинг-дата/

Аутоматизовано тестирање

Једном када имате скуп захтева у колекцији, па чак и боље, ако их складиштите у Гитхуб-у, можете почети да их користите као део начина управљања аутоматским тестирањем вашег АПИ-ја.

Иако постоји неколико решења за то, Постман укључује покретач колекције уграђен директно у апликацију, а Невман је алатка командне линије која вам омогућава покретање тестова директно са терминала.

//ввв.постман.цом/усе-цасес/апи-тестинг-аутоматион/

Који је ваш омиљени начин тестирања и играња са АПИ-има?

Поделите са мном на Твиттер-у!

Пратите ме за још Јавасцрипта, УКС-а и других занимљивих ствари!

  • ? Запрати ме на твитеру
  • ? Претплатите се на мој Иоутубе
  • Уп Пријавите се за мој билтен