Community på Sveriges dataportal
Enkel PHP för att hämta kulturhistoriska lämningar från Nationella geodataplattformen
-
Nedan visas en enkel PHP för att hämta kulturhistoriska lämningar i form av referensobjekt från Nationella geodataplattformen. Det sker inget urval utifrån attribut annat än typ. Limit-parametern begränsar hur många objekt som hämtas. Det går att maximalt hämta 10000 objekt åt gången.
PHP-koden hämtar en OAuth2-token från Lantmäteriets API genom att skicka en POST-förfrågan med dina konsumentnycklar. När token har hämtats, används den för att autentisera en annan POST-förfrågan till Lantmäteriets API för att hämta data om kulturhistoriska lämningar. Slutligen skrivs den hämtade datan ut i JSON-format.
header('Content-Type: application/json'); function getToken() { return json_decode(file_get_contents('https://apimanager.lantmateriet.se/oauth2/token', false, stream_context_create([ 'http' => [ 'header' => [ 'Authorization: Basic ' . base64_encode('consumerKey:consumerSecret'), 'Content-Type: application/x-www-form-urlencoded' ], 'method' => 'POST', 'content' => 'grant_type=client_credentials' ] ])), true)['access_token'] ?? exit('Error fetching token'); } function searchData($token) { return file_get_contents('https://api.lantmateriet.se/distribution/geodatakatalog/sokning/v1/kulturhistorisklamning/v1/search', false, stream_context_create([ 'http' => [ 'header' => [ 'Authorization: Bearer ' . $token, 'Content-Type: application/json' ], 'method' => 'POST', 'content' => json_encode([ 'query' => ['feature.typ' => ['eq' => 'kulturhistorisk lämning']], 'limit' => 10 ]) ] ])) ?? exit('Error fetching data'); } echo searchData(getToken()); -
@lmdaniel Snyggt. Fråga för denna tråd och liknande trådar från dig som har kodsnuttar: Kommer koden läggas upp på någon lämplig plattform för kodhantering t.ex. har Lantmäteriet en instans av Git-plattform som kan dela extern kod?
Eller kan LM kanske ordna en organisation med kodförråd på EU-ägda Git-plattformen Codeberg?
-
@mattias
Jag ska vara transparent och säga att jag försöker driva på just den här frågan internt inom Lantmäteriet om hur myndigheten bättre skulle kunna bidra med kod-exempel på någon Git-plattform eller egen plattform. Vi vet att det är något som efterfrågas. Kanske kan det hända något framöver.I väntan på något ställningstagande provar jag att bidra här!

-
@lmdaniel Superbra! Kul att höra. Kan verkligen föreställa mig att det efterfrågas, och kan vara bra att göra även om det inte är lagkrav på det för att proaktivt minska admin och kundtjänst kring användning av API:er & data.

Post 1 of 4