- - Geolocalizare gratuită a vizitatorilor site-ului web cu API-ul ipstack (Review)

Geolocalizarea gratuită a vizitatorilor site-ului web cu API-ul ipstack (Review)

De la începuturile sale umile de acum 25 de ani,web-ul mondial a evoluat într-un mod pe care nici cei mai buni analiști nu l-ar fi putut prezice niciodată. Formați ceea ce a fost esențial un instrument pentru a ajuta cercetătorii să împărtășească informații, acesta a evoluat într-un instrument de consum pe care mulți dintre noi pur și simplu nu îl putem trăi. A schimbat multe aspecte din viața noastră și am ajuns să ne bazăm pe ea, poate mai mult decât ar trebui. A devenit atât de obișnuit încât schimbă industria de retail. De la lanțuri mari de magazine din cărămidă și mortar, retailerii de top sunt acum piețe web-based.

Pentru a avea succes, retailerii online nu trebuie doarsă fie prezenți pe web, dar trebuie să utilizeze pe deplin funcțiile sale. O astfel de caracteristică este geolocalizarea. Această tehnologie poate permite retailerului să afle locația vizitatorului site-ului său web, o caracteristică utilă care să le permită să afișeze costuri de transport estimate sau să prezinte oferte specifice locației. Una dintre cele mai ușoare metode de a beneficia de geolocalizare este utilizarea unei API dedicate care poate fi alimentată cu o adresă IP și care va returna orice informație relevantă despre acea adresă. În IPstack API este un astfel de produs și suntem pe cale să descoperimcum își face magia și ce poate face pentru tine. Vom analiza funcționalitatea de bază a instrumentului, precum și modul de utilizare al acestuia. Vom vedea cum funcționează, ce tip de documentație și suport este disponibil pentru produs și vom arunca o privire asupra structurii sale de preț destul de simple.

Prezentarea ipstack

La baza sa, ipstack este o API de geolocalizare careutilizează mai multe ISP-uri interconectate pentru a furniza date geografice precise. Apelați API-ul din codul site-ului dvs. web și vă va returna o multitudine de date geografice despre utilizatorii site-ului dvs. web. Vei obține, desigur, locația geografică a utilizatorului (nu este punctul principal?), Dar aceasta nu este totul. De exemplu, instrumentul va returna un link către o imagine a pavilionului de țară al utilizatorului sau o versiune emoji a acestuia. În plus, veți obține informații despre dacă utilizatorul vă accesează site-ul printr-un proxy. Vom intra în detalii mai profunde despre toate acestea, în timp ce analizăm detalii mai profunde la modulele disponibile.

Proiectul, inițial numit freegeoip.net, a văzut lumina înapoi în 2009 ca o inițiativă open source pentru a ajuta dezvoltatorii. Printr-o îmbunătățire continuă bazată pe feedback-ul utilizatorilor, a evoluat vreo opt ani mai târziu în produsul complet pe care îl analizăm. În acest timp, baza de utilizare a produsului a crescut până la peste o sută de mii de clienți mulțumiți. Și nu sunt doar clienți. Giganți precum Microsoft sau Samsung folosesc API-ul. La fel și Airbnb și HubSpot.

API-ul ipstack utilizează o schemă extrem de dinamicăcare își actualizează baza de date de mai multe ori pe zi, asigurând integritatea rezultatelor returnate. În acest scop, ipstack a asociat cu mai multe ISP-uri mari din întreaga lume. Instrumentul realizează toate comunicările pe un canal criptat SSL de 256 biți - folosind HTTPS - pentru a asigura toate transferurile de date. Rezultatele pot fi returnate de API în format XML sau JSON, în funcție de nevoile dvs. specifice.

Una dintre cele mai bune părți ale API-ului ipstack este aceastamodularitate. Diversele module disponibile returnează din ce în ce mai multe date despre locația utilizatorului. Aceasta face un instrument foarte flexibil. Viteza este, de asemenea, unul dintre cele mai puternice produse. Apelați API-ul cu parametrul (parametrii) corespunzător și obțineți rezultatele solicitate foarte rapid. În prezent, ipstack API gestionează peste două miliarde de solicitări zilnic și răspunde în continuare aproape instantaneu. Printr-un parteneriat cu diverse ISP-uri, produsul poate acoperi aproximativ 2 milioane de locații și peste două sute de mii de orașe din întreaga lume. De asemenea, acceptă adrese IPv4 și IPv6.

Cum funcționează geolocalizarea

Înainte de a merge mai departe, să facem o pauză scurtă șiaruncați o privire rapidă cum arată geolocalizarea. După cum ghiciți de la numele ipstack, aceasta are de a face cu adresele IP. Adresele IP pot fi comparate - într-o anumită măsură - cu adresele poștale. Fiecare dispozitiv conectat la Internet are o adresă IP unică. Dar aceste adrese IP nu sunt alocate doar la întâmplare fiecărui dispozitiv. Există un anumit sens în ea. O parte a unei adrese IP identifică dispozitivul conectat individual și o parte din acesta identifică rețeaua la care este conectat. Iar partea de rețea în sine este organizată ierarhic, oarecum ca un arbore de director de discuri de computer. (Sper că inginerii dintre cititorii noștri mă vor ierta pentru această simplificare.)

Aceasta este similară cu o adresă poștală cu o stradănumărul, un nume de stradă, un oraș și, în cele din urmă, o țară. La fel cum poșta britanică nu are nici o idee unde se află o adresă americană, aceasta va trimite un e-mail către USPS, care va avea grijă de dirijarea poștei către locația potrivită. La fel cum ai putea introduce aproape orice adresă poștală într-un instrument precum Google map și să obții exact locația corespunzătoare, poți interoga un instrument precum API-ul ipstack cu o adresă IP pentru a obține locația sa.

Aceasta are totuși anumite limitări. De exemplu, nu veți primi locația exactă de la adresa IP. Ce veți obține este orice poate furniza ISP-ul care furnizează adresa IP. Acest lucru nu este adesea mult mai precis decât orașul sau cartierul general, deși unii furnizori returnează mai multe informații decât alții. De asemenea, dacă utilizatorul solicită un VPN pentru a accesa site-ul dvs. web, ceea ce veți obține dintr-o astfel de căutare este locația serverului VPN pe care îl utilizează.

Caracteristici principale ale API-ului ipstack

Dezvoltatorii API ipstack au ales să folosească unabordare modulară cu acest produs. Este format din diverse module, fiecare returnând un tip diferit de informații. Există, de exemplu, module de fus orar, valută sau chiar securitate. Alegeți ce modul să utilizați utilizând parametrii adecvați atunci când trimiteți cererea către API-ul ipstack.

Există câteva avantaje pentru această abordare. În primul rând, face ca răspunsul să fie mai ușor de gestionat. Dacă ar exista un singur tip de solicitare care returnează toate datele disponibile despre o adresă IP, codul site-ului dvs. web ar trebui să analizeze întregul răspuns pentru a obține orice informații de care are nevoie. De asemenea, trimiterea de solicitări mai mici - cu răspunsuri mai mici - poate îmbunătăți performanța.

Să aruncăm o privire mai detaliată la fiecare dintre cele disponibilemodul, cum să le numim și cum arată răspunsul lor tipic. Acest lucru vă va oferi o imagine de ansamblu destul de clară asupra a ceea ce vă puteți aștepta de la acest instrument puternic.

Modulul de locație

IPstack API - Modul de locație

Cel mai de bază API-ul ipstack API esteModulul de locație. Acesta returnează detalii despre locația fizică a adresei IP furnizate în interogare. Veți obține țara adresei IP, limba principală sau oficială, precum și un emoji pentru steagul țării pe care îl puteți utiliza pentru a personaliza experiența utilizatorului.

Iată un răspuns tipic la o interogare la API-ul ipstack. Prima parte este inclusă cu orice întrebare, indiferent de modulul solicitat:

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

Majoritatea atributelor returnate sunt explicative de la sine, dar aveți documentație detaliată pe site-ul ipstack, dacă aveți nevoie de ajutor suplimentar.

Dar, deoarece vorbim despre modulul de locație, să aruncăm o privire la ce informații suplimentare se returnează atunci când îl utilizăm:

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

După cum puteți vedea, informațiile suplimentare pe care le obțineți suntîn principal capitala țării, diferitele limbi utilizate în acea locație, o legătură la o imagine a steagului țării și unicodul emoji al țării.

Modulul valutar

IPstack API - Modul valutar

Modulul valutar poate fi utilizat pentru a continuaîmbunătățiți experiența de utilizare a site-ului dvs. Acest lucru este valabil în special pentru un site de cumpărături, deoarece vă va permite să afișați prețurile în moneda utilizatorului. Detaliile furnizate includ numele și simbolul monedei locale, precum și numele său plural. API-ul nu va converti prețurile în moneda corespunzătoare, desigur, dar vă va permite să utilizați o altă API pentru a converti prețurile în moneda potrivită pentru vizitatorii dvs. Să aruncăm o privire la cum arată ieșirea din modulul de monedă:

currency: Object{}
code: "CAD"
name: "Canadian Dollar"
plural: "Canadian dollars"
symbol: "CA$"
symbol_native: "$"

Modulul de securitate

IPstack API - Modul de securitate

Probabil că nu este la fel de popular - sau util - ca anteriorModule de securitate este încă interesant. Acesta returnează informații despre mai multe aspecte de securitate ale conexiunii primite. De exemplu, acesta vă va spune dacă site-ul este accesat printr-un proxy și, în caz afirmativ, tipul de proxy sau dacă solicitarea a venit prin rețeaua tor. De asemenea, vă poate spune că o solicitare este de la un crawler și nu de la un utilizator real. Acest tip de informații pot fi utilizate pentru a preveni răzuirea. De asemenea, modulul returnează nivelul de amenințare asociat cu adresa IP furnizată, permițând astfel o protecție brută împotriva cererilor rău intenționate. Iată un răspuns la tipicul răspuns din modulul de securitate:

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

Modulul de fus orar

IPstack API - Modul de fus orar

Un alt modul care poate fi utilpersonalizați experiența de utilizare a vizitatorilor site-ului dvs. este modulul fusului orar. Acesta returnează câteva detalii suplimentare despre - ai ghicit - vizitatorii site-ului tău. Unul dintre locurile în care puteți utiliza o astfel de caracteristică în site-urile care tratează informații sensibile la timp. Vă permite să afișați ora corectă pe baza locației utilizatorilor.

Modulul oferă informații precum compensarea GMT, ora curentă a utilizatorului, codul orar și locația fusului orar așa cum puteți vedea din acest răspuns de exemplu:

time_zone: Object{}
id: "America/Montreal"
current_time: "2019-07-09T12:39:22-04:00"
gmt_offset: -14400
code: "EDT"
is_daylight_saving: true

Modulul de conexiune

IPstack API - Modul de conectare

Nu în ultimul rând este modulul de conectare. Acesta este destul de simplist. Tot ce returnează este numărul sistemului autonom (AS) asociat cu adresa IP sursă, precum și numele ISP. Ei bine, este de fapt numele proprietarului AS, mai degrabă ISP. Unele organizații își înregistrează propriul sistem autonom, așa cum se întâmplă în exemplul de mai jos:

connection: Object{}
asn: 395399
isp: "City of Montreal"

Acesta este probabil cel mai puțin util dintre toate modulele, dar unii îl vor găsi util în diverse scopuri analitice.

Lucrul cu API-ul ipstack

Am avut o privire asupra informațiilor care pot fireturnat de API-ul ipstack, acum este momentul să aruncăm o privire la cum se numește. API-ul ipstack oferă trei tipuri diferite de interogări fiecare cu parametri diferiți. Există căutarea standard, căutarea în bloc și căutarea solicitantului. Să vedem cum diferă. Aceasta este o caracteristică plăcută, deoarece, de exemplu, cererea în vrac permite combinarea mai multor solicitări într-una, reducând astfel cheltuielile generale și permițând rezultate mai rapide. Să aruncăm o privire mai detaliată la fiecare tip de solicitare.

Căutare standard

După cum ați putut ghici, căutarea standard estecea mai de bază. Acesta returnează detaliile despre o singură adresă IP pe care o furnizați la apelarea API-ului ipstack. Este destul de simplu de utilizat și va funcționa cu adrese IPv4 sau IPv6. Pentru a face lucrurile și mai ușoare, documentația produsului furnizează cod de eșantion pentru solicitarea standard atât în ​​PHP (cURL) cât și în JavaScript (Jquery.ajax). Dacă site-ul dvs. web se construiește folosind oricare dintre acestea, utilizarea API-ului este într-adevăr un dezvăluitor. Iată un exemplu de apel tipic către API folosind cod HTML simplu:

https://api.ipstack.com/123.123.123.123?access_key=YOUR_ACCESS_KEY

În acest exemplu, YOUR_ACCESS_KEY ar fi înlocuit de cheia de acces reală a dumneavoastrăai primit când te-ai înscris pentru serviciu. Ați include, de asemenea, adresa IP reală despre care doriți să vă informați mai degrabă decât cea falsă din acest exemplu.

Rezultatele pentru o căutare standard includ toatemodulele implicit, dar parametrii suplimentari vă permit să ajustați solicitarea la nevoile dvs. exacte. Toate detaliile privind parametrii disponibili sunt clar explicate în documentația produsului. De asemenea, răspunsul implicit este un obiect JSON, dar parametrii îl pot schimba într-un format XML.

Căutări în masă și solicitant

Căutarea în vrac vă permite să solicitați datemai multe adrese IP dintr-o singură solicitare. La fel ca Standard Lookup, puteți obține date atât pe adresele IPv4, cât și pe IPv6. Puteți chiar amesteca ambele tipuri de adrese într-o singură solicitare. Formatul solicitării este același cu cel al căutării standard, cu excepția faptului că specificați mai multe adrese IP separate prin virgule.

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

Ultimul tip de solicitare oferit de ipstackAPI-ul este căutarea solicitantului. Acesta va returna informațiile privind adresa IP de la care vine solicitarea. Este tipul de solicitare la care ați rula cu un script din partea clientului. Pentru a efectua un apel de căutare a solicitantului, tot ce faceți este să utilizați cuvântul cheie „verificați” în locul unei adrese IP. Ceilalți parametri de solicitare disponibili sunt identici cu alte tipuri de solicitare.

https://api.ipstack.com/check?access_key=YOUR_ACCESS_KEY

Cum funcționează API-ul ipstack?

API-ul ipstack este, mai mult decât probabil, cevate vei integra într-un site web în timp real. De exemplu, poate doriți să serviți conținut diferit în funcție de locația clientului. Pentru a realiza acest lucru, aveți nevoie de API-ul care să funcționeze rapid. Orice întârziere în răspunsul API se va traduce în întârzieri în afișarea paginii către clientul dvs., lucru pe care doriți să îl evitați. Același lucru este valabil indiferent pentru ce utilizați datele locației. Acesta este motivul pentru care timpul de răspuns al instrumentului pe care îl utilizați este de cea mai mare importanță. În timp ce o API de geolocalizare poate oferi o funcționalitate mult necesară, eșecul ei de a efectua poate avea un impact dezastruos.

Din aceste motive, trebuie să alegeți o APItimp bun de răspuns. Am depus o mare parte din munca grea de testare a diferitelor scenarii și am efectuat teste cu adrese IP simple sau multiple, unele cu parametri opționali, altele cu mai puțin. Am fost destul de mulțumiți de rezultate și am obținut un timp de răspuns destul de consistent de aproximativ 100 ms, indiferent de solicitare. Răspunsul a fost, de asemenea, consecvent în timp, fără a avea „ore de grabă” aparente când performanța ar avea de suferit și, de asemenea, a fost similară indiferent de locul în care am lansat solicitările. Se pare că serverele ipstack sunt create pentru a face față sarcinii pe care o primesc. În general, se pare că folosirea API-ului ipstack a avut aproape niciun efect asupra răspunsului site-ului web văzut din perspectiva utilizatorului.

Documentarea produsului și asistență

Se spune adesea că un produs este la fel de bunca documentație. Dacă acest lucru este adevărat, API-ul ipstack nu are nimic de teamă, deoarece documentația sa este ușor de găsit, utilizat și înțeles. Calitatea documentației oferă, de asemenea, o măsură despre cât de mult îi pasă un editor de software de utilizatorii săi. Aici, nu este nimic de care să vă faceți griji.

IPstack API - Acasă documentare

Unul dintre cele mai bune lucruri despre acest produsdocumentația este, ciudat, cât de puțin există. Totul se potrivește pe o singură pagină web bine pregătită, unde veți găsi cu ușurință tot ce aveți nevoie. Și pentru a face lucrurile și mai ușoare, un panou de meniu face accesarea oricărei secțiuni date o adiere. Documentația acoperă totul, de la utilizarea diferitelor tipuri de solicitări la personalizarea răspunsului.

În cazul foarte improbabil, atunci când nu veți face acest lucrugăsiți ceea ce aveți nevoie în documentație, asistența este de asemenea disponibilă. Puteți dura ceva timp pentru a ajunge inițial la suportul tehnic, dar, odată ce faceți, răspund destul de repede.

Prețuri

Mai multe planuri de prețuri sunt disponibile pentruIPstack API. La cel mai mic nivel, există planul gratuit. După cum îi spune și numele, acesta este gratuit. De asemenea, este oarecum limitată. Pentru început, puteți rula până la 10 000 de solicitări pe lună. De asemenea, include doar modulul de locație, iar accesul la asistență este limitat. Cu toate acestea, poate fi un mod minunat de a testa produsul și de a vedea cum se poate integra în mediul dumneavoastră.

Următorul nivel este planul de bază. Acesta se vinde cu 9,99 USD / lună sau 95,90 USD / an (reducere de 20%) și aduce limita de solicitări până la 50 000 $ / lună. Vă permite, de asemenea, să utilizați modulele Monedă, fus orar și conexiune. În plus, suportul sporit este, de asemenea, inclus în plan, precum și securitate sporită prin utilizarea criptării SSL.

Cel mai popular plan este cel profesionalcare se vinde pentru 49,99 USD / lună sau 479,90 USD / an. Vă oferă tot ceea ce este inclus în planul de bază, dar ridică limita solicitării lunare la 500 000 și include, de asemenea, capacitatea de a face cereri în vrac.

În partea de sus este planul profesional plus. Costă 99,99 USD / lună sau 959,90 USD / an. Este identic cu planul profesional, dar permite până la 2 milioane de solicitări pe lună și este singurul plan care include modulul de securitate.

Dacă nu este suficient, există și oplan de întreprindere personalizabil care poate fi aranjat prin contactarea ipstack. Poate include cât mai multe solicitări lunare de care aveți nevoie, precum și diverse soluții personalizate bazate pe nevoile specifice ale unui client.

In concluzie

API-ul ipstack este un produs excelentvă permite să apucați cât mai multe din datele pe care le puteți obține de la o adresă IP rapid și ușor. Are un timp de răspuns uimitor, o documentare excelentă și un suport bun care face ca acest lucru să fie o valoare excelentă pentru bani. De asemenea, faptul că mai mulți giganți de pe Internet îl folosesc este probabil un bun test al valorii produsului.

Acesta este cu siguranță un produs pe care l-aș recomanda dacăte uiți la exploatarea datelor care pot fi colectate pentru adresa IP a vizitatorului site-ului tău. Și întrucât este disponibil un plan gratuit, deși limitat, nu există niciun motiv pentru care nu ar trebui să încercați cel puțin să vedeți ce poate face pentru voi.

Comentarii