Geolokasjon og lokalisering
Utnytt edge-funksjonalitet til å levere lokalisert innhold og tjenester basert på brukerens posisjon.
Geolokasjon og lokalisering er en gratis leksjon i Edge computing med Cloudflare Workers og Deno på CoddyKit. Dette er leksjon 3 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Edge computing med Cloudflare Workers og Deno, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Edge computing med Cloudflare Workers og Deno inneholder totalt 4 leksjoner.
Geolokasjon og lokalisering på kanten
Har du noen gang lurt på hvordan nettsteder ser ut til å vite hvor du befinner deg, eller foretrekker språket ditt? Det skyldes ofte geolokasjon og lokalisering, særlig når dette drives av kanten!
Geolokasjon handler om å finne brukerens fysiske plassering. Lokalisering handler om å tilpasse innhold (for eksempel språk, valuta eller datoformater) basert på denne plasseringen.
Kanten egner seg perfekt til dette! Ved å behandle forespørsler nærmere brukeren kan vi raskt fastslå plasseringen og levere tilpassede opplevelser med minimal forsinkelse.
Slik kjenner kanten posisjonen din
Når du kobler deg til et nettsted, sender enheten din en IP-adresse. Edge-nettverk som Cloudflare bruker denne IP-adressen til å gjøre et raskt oppslag og fastslå din omtrentlige geografiske plassering.
Denne informasjonen blir deretter tilgjengelig for koden som kjører på kanten. Det er raskt og automatisk, og det er ikke avhengig av GPS i nettleseren, som ofte krever brukerens tillatelse.
Få tilgang til geolokasjonsdata
Cloudflare Workers gir tilgang til geolokasjonsdata gjennom objektet request.cf. Dette objektet fylles automatisk ut for hver innkommende forespørsel som treffer kanten.
Det inneholder nyttige egenskaper som landskode, by, region og til og med tidssone. Dermed blir det svært enkelt å bygge posisjonsbevisste applikasjoner uten ekstra API-er.
Demo: Enkel registrering av land
La oss skrive en enkel Cloudflare Worker som finner brukerens land og svarer med en hilsen. Dette bruker egenskapen request.cf.country.
Prøv å kjøre dette eksempelet for å se landskoden din!
export default {
async fetch(request) {
const country = request.cf.country; // e.g., "US", "DE", "JP"
return new Response(`Hello from ${country || 'an unknown location'}!`);
}
};Detaljert posisjonsinformasjon
Objektet request.cf tilbyr mer enn bare landskoden. Du kan hente mer detaljerte opplysninger for dypere lokalisering:
cf.city: Brukerens by (for eksempel "San Francisco")cf.region: Brukerens region/delstat (for eksempel "CA")cf.timezone: Brukerens tidssone (for eksempel "America/Los_Angeles")cf.latitude,cf.longitude: Omtrentlige koordinater
Bruk disse til å skape svært personaliserte opplevelser.
Demo: Personalisert hilsen
La oss forbedre Workeren vår slik at den gir en mer personlig hilsen ved hjelp av by- og landsinformasjon fra objektet request.cf.
Dette viser hvor enkelt du kan bruke flere geolokasjonsdata.
export default {
async fetch(request) {
const { city, country } = request.cf;
if (city && country) {
return new Response(`Welcome, traveler from ${city}, ${country}!`);
} else if (country) {
return new Response(`Welcome, traveler from ${country}!`);
} else {
return new Response('Welcome, traveler!');
}
}
};Lokalisering: språk og innhold
Utover enkle hilsener kan du bruke geolokasjonsdata til å levere ulike versjoner av innholdet ditt. Dette er avgjørende for ekte lokalisering.
- Språk: Fastslå brukerens foretrukne språk (for eksempel fra
Accept-Language-headeren ellercf.country) og levere oversatt tekst. - Valuta: Vis priser i den lokale valutaen basert på brukerens land.
- Innholdsvarianter: Vis ulike kampanjer eller produkt tilgjengelighet basert på regionale begrensninger.
Demo: Dynamisk språk
Her er et eksempel på hvordan en Worker kan vise en dynamisk velkomstmelding basert på brukerens land. For enkelhets skyld knytter vi noen få land til bestemte språk.
I en ekte applikasjon ville du integrert et mer robust i18n-bibliotek (internasjonalisering).
export default {
async fetch(request) {
const country = request.cf.country;
let message;
switch (country) {
case 'US':
message = 'Hello!';
break;
case 'FR':
message = 'Bonjour!';
break;
case 'DE':
message = 'Guten Tag!';
break;
default:
message = 'Welcome!';
}
return new Response(message);
}
};Beste praksis for lokalisering
Ta hensyn til disse tipsene for å gjøre lokaliseringen på kanten robust og brukervennlig:
- Reserveinnhold: Ha alltid et standardspråk eller en standard innholdsversjon for ukjente plasseringer.
- Brukeroverstyring: La brukerne velge foretrukket språk eller plassering manuelt, slik at de kan overstyre den automatisk registrerte innstillingen.
- Bufring: Bufre lokaliserte innholdsvarianter effektivt for å maksimere ytelsesfordelene.
- Personvern: Ta hensyn til personvernregler (som GDPR) når du bruker posisjonsdata.
Hurtigsjekk: lokalisering på kanten
Edge computing forbedrer i betydelig grad geolokalisering og posisjonsbestemmelse. Hvilke av følgende utsagn beskriver nøyaktig fordelene ved eller metodene for å bruke edge-funksjonalitet til posisjonsbestemmelse?
Oppsummering og neste steg
I denne leksjonen utforsket vi hvordan geolokasjon og lokalisering er kraftige funksjoner på kanten.
- Du lærte hvordan edge-nettverk automatisk leverer posisjonsdata.
- Vi så hvordan du får tilgang til disse dataene i Cloudflare Workers ved hjelp av objektet
request.cf. - Du bygde Workers som leverer personalisert og lokalisert innhold basert på brukerens posisjon.
Ved å utnytte kanten til disse funksjonene forbedrer du brukeropplevelsen og applikasjonens ytelse betydelig. Fortsett å eksperimentere med disse konseptene for å bygge virkelig globale applikasjoner!
Lær deg Edge computing med Cloudflare Workers og Deno med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 12
- Leksjoner
- 47
Ofte stilte spørsmål
Er leksjonen «Geolokasjon og lokalisering» gratis?
Ja – hele teksten i «Geolokasjon og lokalisering» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Edge computing med Cloudflare Workers og Deno-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Edge computing med Cloudflare Workers og Deno inneholder totalt 4 leksjoner.
Hva lærer jeg i «Geolokasjon og lokalisering»?
Utnytt edge-funksjonalitet til å levere lokalisert innhold og tjenester basert på brukerens posisjon. Du øver på Edge computing med Cloudflare Workers og Deno med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Edge computing med Cloudflare Workers og Deno?
Ingen tidligere erfaring er nødvendig. Edge computing med Cloudflare Workers og Deno på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 3 av 4.
Hvor lang tid tar leksjonen «Geolokasjon og lokalisering»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Edge computing med Cloudflare Workers og Deno-leksjonen?
Ja. Alle Edge computing med Cloudflare Workers og Deno-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Mikrotjenester på edge
- Hendelsesdrevne arkitekturer
- Geolokasjon og lokalisering
- Durable Objects og tilstandsstyrt koordinering