Od svojih skromnih početaka prije više od 25 godina,svjetski se web razvio na način koji ni najbolji analitičari nikada nisu mogli predvidjeti. Oblikovanje onoga što je u biti bilo alat za pomoć istraživačima u razmjeni informacija, razvilo se u potrošački alat bez kojeg mnogi od nas jednostavno ne mogu živjeti. Promijenila je mnoge aspekte našeg života i na to smo se oslonili, možda i više nego što bi trebali. To je postalo toliko uobičajeno da mijenja maloprodajnu industriju. Iz velikih lanaca trgovina ciglama i minobacača, najprodavaniji su sada internetska tržišta.
Za uspjeh, mrežni trgovci ne trebaju samoda budu prisutni na webu, ali također trebaju u potpunosti iskoristiti njegove značajke. Jedna takva značajka je i geolokacija. Ova tehnologija može dopustiti prodavaču da zna lokaciju posjetitelja svoje web stranice, što je korisna značajka za prikazivanje procijenjenih troškova isporuke ili predstavljanje specifičnih ponuda. Jedan od najjednostavnijih načina da iskoristite prednosti geolokacije je korištenje namjenskog API-ja koji se može hraniti s IP adresom i koji će vratiti sve relevantne informacije o toj adresi. To. ipstack API jedan je od takvih proizvoda i upravo ćemo ih otkritikako to čini svoju magiju i što može učiniti za vas. Pogledat ćemo osnovne funkcionalnosti alata kao i kako ga koristiti. Vidjet ćemo kako se radi, koja je vrsta dokumentacije i podrške dostupna za proizvod te ćemo pogledati njegovu prilično jednostavnu strukturu cijena.

Predstavljamo ipstack
U svojoj srži, ipstack je API za geolokaciju kojikoristi više međusobno povezanih davatelja internetskih usluga za pružanje točnih geografskih podataka. Nazovite API sa kodom vaše web lokacije i on će vratiti obilje geografskih podataka o korisnicima vaše web lokacije. Dobićete, naravno, geografski položaj korisnika (nije li to glavna točka?), Ali to nije sve. Na primjer, alat će vratiti vezu do slike korisničke zastave zemlje ili njegove emojijske verzije. Nadalje, dobit ćete informacije o tome da li korisnik pristupa vašoj web lokaciji putem proxyja. Detaljnije ćemo podrobnije objasniti sve to dok detaljnije proučimo dostupne module.
Projekt, u početku nazvan freegeoip.Neto, ugledao je svjetlo 2009. godine kao inicijativu otvorenog koda za pomoć programerima. Neprekidnim usavršavanjem na temelju povratnih informacija korisnika, evoluiralo je nekih osam godina kasnije u punopravni proizvod koji gledamo. Za to vrijeme, korisnička baza proizvoda narasla je na preko sto tisuća zadovoljnih kupaca. I nisu samo kupci. Divovi poput Microsofta ili Samsung koriste API. Tako su Airbnb i HubSpot.
API ipstack koristi vrlo dinamičnu shemukoja svoju bazu podataka ažurira više puta dnevno osiguravajući integritet vraćenih rezultata. U tu svrhu ipstack se udružio s nekoliko velikih ISP-ova širom svijeta. Alat obavlja svu komunikaciju preko 256-bitnog SSL kriptiranog kanala - pomoću HTTPS - za osiguranje svih prijenosa podataka. Rezultate može vratiti API u bilo XML ili JSON formatu, ovisno o vašim specifičnim potrebama.
Jedan od najboljih dijelova ipstack API-ja je njegovmodularnost. Različiti dostupni moduli vraćaju sve više podataka o korisnikovoj lokaciji. To čini vrlo fleksibilan alat. Brzina je također jedna od glavnih prednosti proizvoda. Nazovite API s odgovarajućim parametrima i brzo dobivate tražene rezultate. Trenutno ipstack API svakodnevno obrađuje više od dvije milijarde zahtjeva, a još uvijek reagira gotovo trenutno. Kroz partnerstvo s različitim davateljima internetskih usluga proizvod može obuhvatiti oko 2 milijuna lokacija i preko dvjesto tisuća gradova širom svijeta. Također podržava i IPv4 i IPv6 adrese.
Kako funkcionira Geolocation
Prije nego što nastavimo, nakratko zaustavimo ibrzo pogledajte kako izgleda geolokacija. Kao što nagađate iz imena ipstacka, to ima veze s IP adresama. IP adrese mogu se u određenoj mjeri usporediti s poštanskim adresama. Svaki uređaj povezan s Internetom ima jedinstvenu IP adresu. Ali ove IP adrese nisu samo nasumično dodijeljene svakom uređaju. Ima neki smisao u tome. Dio IP adrese identificira pojedinačno spojeni uređaj, a dio identificira mrežu na koju je povezan. A sam mrežni dio je hijerarhijski organiziran, pomalo nalik stablu direktorija računalnih diskova. (Nadam se da će mi inženjeri među našim čitateljima oprostiti ovo previše pojednostavljenja.)
Ovo je slično poštanskoj adresi s ulicombroj, naziv ulice, grad i, na kraju, zemlja. I baš kao što britanska pošta nema pojma gdje se nalazi bilo koja američka adresa, ona će USPS-u poslati poštu u USPS koja će se pobrinuti za usmjeravanje maila na pravo mjesto. I baš kao što biste mogli unijeti gotovo bilo koju poštansku adresu u alat poput Google karte i dobiti točno odgovarajuću lokaciju, možete zatražiti alat poput ipstack API-ja s IP adresom da biste dobili njegovu lokaciju.
To ipak ima određena ograničenja. Na primjer, nećete dobiti točnu lokaciju s IP adrese. Dobit ćete sve što pruža pružatelj internetskih usluga koji isporučuje IP adresu. To često nije mnogo preciznije od grada ili općenito susjedstva, iako neki davatelji usluga vraćaju više informacija od drugih. Također, ako korisnik tuži VPN za pristup vašoj web lokaciji, ono što biste dobili od takve pretrage je lokacija VPN poslužitelja koji koristi.
Glavne značajke API-ja za ipstack
Programeri ipstack API-ja odlučili su koristiti amodularni pristup ovom proizvodu. Sastoji se od različitih modula od kojih svaki vraća drugačiju vrstu informacija. Na primjer, postoje moduli vremenske zone, valuta ili čak sigurnost. Možete odabrati koji će modul koristiti pomoću odgovarajućih parametara prilikom slanja zahtjeva u ipstack API.
Nekoliko je prednosti ovog pristupa. Prvo, olakšava se odgovor. Ako je postojala samo jedna vrsta zahtjeva koji vraća sve dostupne podatke o IP adresi, kôd vaše web stranice morao je procijeniti cijeli odgovor da bi preuzeo sve potrebne informacije. Također, slanje manjih zahtjeva - s manjim brojem odgovora - može poboljšati performanse.
Pogledajmo dublje svaki od dostupnihmodula, kako ih nazvati i kako izgleda njihov tipičan odgovor. To će vam pružiti prilično jasan pregled onoga što možete očekivati od ovog moćnog alata.
Lokacijski modul

Najosnovniji modul API ipstack jeLokacijski modul. Vraća detalje o fizičkoj lokaciji IP adrese navedene u upitu. Dobit ćete zemlju adrese IP-a, njegov glavni ili službeni jezik, kao i emojiju za zastavu zemlje koji možete koristiti za personaliziranje korisničkog iskustva.
Evo tipičnog odgovora na upit API-ja za ipstack. Prvi dio je uključen u bilo koji upit, neovisno o traženom modulu:
ip: "142.243.254.224" hostname: "142.243.254.224" type: "ipv4" continent_code: "NA" continent_name: "North America" country_code: "CA" country_name: "Canada" region_code: "QC" region_name: "Quebec" city: "Montreal" zip: H2V latitude: 45.5178 longitude: -73.6046
Većina je vraćenih atributa samorazumljiva, ali imate detaljnu dokumentaciju na web lokaciji ipstacka ukoliko vam je potrebna dodatna pomoć.
Ali budući da govorimo o lokacijskom modulu, pogledajmo što se dodatne informacije vraćaju kada ga upotrebljavamo:
location: Object {} geoname_id: null capital: "Ottawa" languages: Object {} code: "en" name: "English" native: ""English"" code: "fr" name: "French" native: ""Français"" country_flag: "http://assets.ipstack.com/flags/ca.svg" country_flag_emoji: "??" country_flag_emoji_unicode: "U+1F1E8 U+1F1E6" calling_code: "1" is_eu: false
Kao što vidite, dodatne informacije dobivajuuglavnom glavni grad države, različiti jezici koji se koriste na toj lokaciji, veza do slike zastave i unicode simbola zemlje.
Valutni modul

Modul Valuta može se koristiti za daljepoboljšati vaše korisničko iskustvo. To se posebno odnosi na web mjesto za kupovinu jer će vam omogućiti prikazivanje cijena u valuti vašeg korisnika. Navedeni detalji uključuju naziv i simbol lokalne valute kao i množinski naziv. API naravno neće pretvoriti cijene u odgovarajuću valutu, ali će vam omogućiti korištenje drugog API-ja za pretvaranje cijena u pravu valutu za vaše posjetitelje. Pogledajmo kako izgleda izlaz iz valutnog modula:
currency: Object{} code: "CAD" name: "Canadian Dollar" plural: "Canadian dollars" symbol: "CA$" symbol_native: "$"
Sigurnosni modul

Vjerojatno nije tako popularan ili koristan kao prethodnimodula, sigurnosni modul je još uvijek zanimljiv. Vraća podatke o nekoliko sigurnosnih aspekata dolazne veze. Primjerice, reći će vam je li web mjestu dostupno putem proxyja i, ako je to, vrsta proxyja ili je li zahtjev došao preko tor mreže. Također vam može reći da je zahtjev više od alata za indeksiranje, a ne od stvarnog korisnika. Ova vrsta informacija može se upotrijebiti za sprječavanje struganja. Modul također vraća razinu prijetnje povezanu s pruženom IP adresom, potencijalno omogućujući grubu zaštitu od zlonamjernih zahtjeva. Evo tipičnog odgovora iz sigurnosnog modula:
security: Object{} is_proxy: false proxy_type: null is_crawler: false crawler_name: null crawler_type: null is_tor: false threat_level: "low" threat_types: null
Modul vremenske zone

Još jedan modul koji može dobro doćipersonalizirajte korisničko iskustvo posjetitelja vaše web stranice modul Time Zone. Vraća neke dodatne detalje o - pogodili ste - posjetiteljima vaše web stranice. Jedno od mjesta gdje biste mogli koristiti takvu značajku na web lokacijama koje se bave vremenski osjetljivim informacijama. Omogućuje vam prikazivanje ispravnog vremena na temelju lokacije vaših korisnika.
Modul pruža informacije poput pomaka GMT, trenutnog vremena korisnika, vremenskog koda i lokacije vremenske zone kao što možete vidjeti iz ovog uzorka odgovora:
time_zone: Object{} id: "America/Montreal" current_time: "2019-07-09T12:39:22-04:00" gmt_offset: -14400 code: "EDT" is_daylight_saving: true
Priključni modul

Posljednje, ali ne najmanje bitno, je modul za povezivanje. Ova je prilično jednostavna. Sve što vraća je broj autonomnog sustava (AS) povezan s izvornom IP adresom kao i imenom ISP-a. Pa, to je zapravo ime vlasnika AS-a, a ne davatelja internetskih usluga. Neke organizacije registriraju vlastiti autonomni sustav, kao što je to slučaj u primjeru u nastavku:
connection: Object{} asn: 395399 isp: "City of Montreal"
Ovo je vjerojatno najmanje korisno od svih modula, ali neki će ga smatrati korisnim u razne analitičke svrhe.
Rad s API-jem za ipstack
Pogledali smo kakve informacije mogu bitikoju je vratio API ipstack, sada je vrijeme da pogledate kako se to zove. API ipstack nudi tri različite vrste upita, svaki s različitim parametrima. Postoje Standardni Lookup, Bulk Lookup i Potraga Potražitelja. Pogledajmo kako se razlikuju. Ovo je lijepa značajka jer, na primjer, skupni zahtjev omogućuje kombiniranje nekoliko zahtjeva u jedan, čime se smanjuje ukupni trošak i omogućuju brži rezultati. Pogledajmo dublje svaku vrstu zahtjeva.
Standardna potraga
Kao što ste mogli pretpostaviti, Standardna potraga jenajosnovnija. Vraća detalje o jednoj IP adresi koju navedete kada zovete ipstack API. Prilično je jednostavan za korištenje i radit će s bilo IPv4 ili IPv6 adresama. Da stvar bude još lakša, dokumentacija proizvoda sadrži uzorak koda za standardni zahtjev i u PHP-u (cURL) i u JavaScript-u (Jquery.ajax). Ako je vaša web stranica izgrađena pomoću bilo kojeg od sljedećeg, korištenje API-ja doista nije jednostavno. Evo primjera uobičajenog poziva API-ja pomoću jednostavnog HTML koda:
https://api.ipstack.com/123.123.123.123?access_key=YOUR_ACCESS_KEY
U ovom primjeru YOUR_ACCESS_KEY zamijenio bi vas stvarnim pristupnim ključemdobio kada ste se prijavili za uslugu. U ovaj ćete primjer uključiti i stvarnu IP adresu o kojoj želite informacije, a ne lutku.
Rezultati za standardni pregled uključuju svemoduli prema zadanim postavkama, ali dodatni parametri omogućuju vam prilagođavanje zahtjeva točno vašim potrebama. Svi detalji o dostupnim parametrima jasno su obrazloženi u dokumentaciji proizvoda. Isto tako, zadani odgovor je JSON objekt, ali parametri ga mogu promijeniti u XML format.
Skupni i potražni zahtjevi
Skupni pregled omogućuje vam da tražite podatke protivviše IP adresa unutar jednog zahtjeva. Baš poput Standardnog pretraživanja, možete dobiti podatke i na IPv4 i IPv6 adresama. Možete čak kombinirati obje vrste adresa u jednom zahtjevu. Format zahtjeva isti je kao u Standardnom pretraživanju, osim što odredite više IP adresa odvojenih zarezima.
https://api.ipstack.com/123.123.123.123,124.124.124.124,125.125.125.125, 126.126.126.126?access_key=YOUR_ACCESS_KEY
Posljednja vrsta zahtjeva koju nudi ipstackAPI je potražnja za potražiteljem. Vratit će informacije o IP adresi s koje dolazi zahtjev. To je vrsta zahtjeva koji biste pokrenuli pomoću skripte na strani klijenta. Da biste uputili poziv za traženje zahtjeva, sve što trebate je da upotrijebite ključnu riječ "ček" umjesto IP adrese. Ostali dostupni parametri zahtjeva isti su kao i za ostale vrste zahtjeva.
https://api.ipstack.com/check?access_key=YOUR_ACCESS_KEY
Kako funkcionira ipstack API?
API ipstack više je nego vjerojatnointegrirali biste se u web lokaciju u stvarnom vremenu. Na primjer, možda želite poslužiti drugačiji sadržaj na temelju lokacije klijenta. Da biste to postigli, treba vam API za brzu izvedbu. Svako kašnjenje u odgovoru API-ja pretvorit će se u kašnjenje prikazivanja stranice klijentu, što biste više vjerojatno vjerovali. Isto je bez obzira za što koristite podatke o lokaciji. To je razlog zašto je vrijeme odziva alata koji koristite od najveće važnosti. Iako API za geolokaciju može pružiti prijeko potrebnu funkcionalnost, njegovo neuspjeh u izvođenju može imati katastrofalan utjecaj.
Iz tih razloga morate odabrati API sadobro vrijeme odziva. Učinili smo velik dio napornog testiranja različitih scenarija i izveli testove s jednom ili više IP adresa, neki s više opcionalnih parametara, neki s manje. Bili smo prilično zadovoljni rezultatima i dobili smo prilično dosljedno vrijeme odziva od oko 100 ms, bez obzira na zahtjev. Odgovor je također bio dosljedan tijekom vremena, bez očiglednih „sati žurbe“ kada bi izvedba patila, a bilo je i slično bez obzira odakle smo pokrenuli zahtjeve. Čini se kao da su ipstack serveri izgrađeni za podnošenje opterećenja koje dobivaju. Sve u svemu, čini se da je upotreba API-ja ipstack jedva išta utjecala na odgovor web stranice gledano iz perspektive korisnika.
Dokumentacija proizvoda i podrška
Često se kaže da je proizvod jednako dobarkao njegova dokumentacija. Ako je to istina, ipstack API nema čega se bojati, jer je njegovu dokumentaciju lako pronaći, koristiti i razumjeti. Kvaliteta dokumentacije također mjeri mjerilo koliko izdavača softvera brine o svojim korisnicima. Ovdje se opet ne treba brinuti.

Jedna od najboljih stvari o ovom proizvodudokumentacija je, začudo, koliko ih je malo. Sve se uklapa u jednu, dobro uređenu web stranicu, na kojoj ćete lako pronaći sve što vam treba. A da bi stvar bila još lakša, okno s izbornikom olakšava pristup bilo kojem dijelu odjeljku. Dokumentacija pokriva sve, od korištenja različitih vrsta zahtjeva, do prilagođavanja odgovora.
U vrlo malo vjerovatnom slučaju kada ne bistepronađite ono što vam je potrebno u dokumentaciji, dostupna je i podrška. Možda će trebati neko vrijeme da prvo stignete do tehničke podrške, ali nakon što to učinite, oni će reagirati prilično brzo.
cijena
Na raspolaganju je nekoliko planova cijenaipstack API. Na najnižoj razini, postoji besplatni plan. Kao što mu ime govori, ovaj je besplatan. Također je pomalo ograničen. Za početak možete pokrenuti do 10 000 upita mjesečno. Također uključuje samo Lokacijski modul i pristup podršci je ograničen. Međutim, može biti izvrstan način testiranja proizvoda i vidljivosti kako se on može integrirati u vaše okruženje.
Sljedeća je razina osnovni plan. Ovaj se prodaje za 9,99 USD mjesečno ili 95,90 USD godišnje (20% popusta) i donosi ograničenje zahtjeva do 50 000 mjesečno. Također vam omogućuje korištenje modula Valuta, Vremenska zona i Spajanje. Nadalje, poboljšana podrška je također uključena u plan, kao i poboljšana sigurnost korištenjem SSL enkripcije.
Najpopularniji plan je onaj profesionalnikoja se prodaje za 49,99 USD mjesečno ili 479,90 USD godišnje. Pruža vam sve što je uključeno u osnovni plan, ali mjesečno povećava ograničenje zahtjeva na 500 000, a također uključuje i mogućnost skupnih zahtjeva.
Na vrhu je profesionalni plus plan. Košta 99,99 dolara mjesečno ili 959,90 dolara godišnje. Identičan je profesionalnom planu, ali dopušta do 2 milijuna zahtjeva mjesečno i jedini je plan da uključuje sigurnosni modul.
Ako to nije dovoljno, postoji i aprilagodljiv plan poduzeća koji se može organizirati kontaktiranjem ipstacka. Može uključivati onoliko mjesečnih zahtjeva koliko vam je potrebno, kao i razna prilagođena rješenja koja se temelje na specifičnim potrebama klijenta.
U zaključku
API ipstack izvrstan je proizvod koji ćeomogućuju vam da brzo i jednostavno prikupite što više podataka koje možete dobiti s IP adrese. Ima nevjerojatno vrijeme odziva, odličnu dokumentaciju i dobru podršku koji kombiniraju kako bi ovo postiglo veliku vrijednost za novac. Također, sama činjenica da ga koristi nekolicina internetskih velikana vjerojatno je dobar dokaz vrijednosti proizvoda.
Ovo je definitivno proizvod koji bih vam preporučio akogledate na iskorištavanje podataka koji mogu biti prikupljeni za IP adresu posjetitelja vaše web lokacije. A budući da je dostupan besplatan - iako ograničen - plan, nema razloga zašto ga barem ne biste pokušavali vidjeti sami što može učiniti za vas.
komentari