Када користити ГЕТ и ПОСТ у Ајаку

Када користите Ајак (Асинхрони ЈаваСцрипт и КСМЛ) да бисте приступили серверу без поновног учитавања веб странице, имате два избора како да информације за захтев проследите серверу: ГЕТ или ПОСТ.

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

Позиви упућени коришћењем ГЕТ-а неће нигде излагати поља и њихове вредности где се употребом ПОСТ-а такође не излаже када је позив упућен од Ајак-а.

Шта не би требало да радиш

Па, како да се одлучимо која од ове две алтернативе се треба користити?

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

instagram viewer

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

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

Дакле, ако количина података која се прослеђује није добар разлог за избор између ГЕТ и ПОСТ, шта онда треба да користимо да бисмо одлучили?

Ове двије методе су у ствари постављене за потпуно различите сврхе, а разлике између начина дјеловања дјеломично су резултат разлике у ономе за што се намјеравају користити. Ово се не односи само на коришћење ГЕТ-а и ПОСТ-а од Ајак-а, већ и где год се ове методе могу применити.

Сврха ГЕТ-а и ПОСТ-а

ГЕТ се користи као што име имплицира: до добити информације. предвиђено је за употребу док читате информације. Прегледници ће кеширати резултат из ГЕТ захтјева и ако се исти ГЕТ захтјев поново постави, они ће приказати кеширани резултат, а не поново покренути цијели захтјев.

Ово није недостатак у обради прегледача; намерно је осмишљен да тако функционише како би ГЕТ позиви били ефикаснији. ГЕТ позив само преузима информације; није предвиђено да мењате било какве информације на серверу, због чега би захтевање података требало да врати исте резултате.

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

Како одабрати ГЕТ или ПОСТ

Уместо да бирате између ГЕТ и ПОСТ-а на основу количине података које преносите у вашем Ајак позиву, требало би да одаберете на основу онога што Ајак позив заправо ради.

Ако је позив за преузимање података са сервера, тада користите ГЕТ. Ако се очекује да се вредност која се дохваћа мења током времена као резултат других процеса ажурирања, додајте тренутни параметар времена у шта прослеђујете у вашем ГЕТ позиву како каснији позиви не би користили раније кеширану копију резултата који више није тачно.

Користите ПОСТ ако ће ваш позив уопште писати било какве податке на сервер.

У ствари, овај критеријум не би требало да користите само за избор између ГЕТ и ПОСТ за ваше позиве Ајак, већ и за одабир који ће се користити за обраду образаца на вашој веб страници.

instagram story viewer