From d6199b5b2ce430d757b252cce57cbe6fbfa15059 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Wed, 26 Oct 2022 10:41:11 -0700 Subject: cache and filter osm locations fetch --- src/routes/locations/+server.js | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 src/routes/locations/+server.js (limited to 'src/routes/locations/+server.js') diff --git a/src/routes/locations/+server.js b/src/routes/locations/+server.js new file mode 100644 index 00000000..48eb9fc6 --- /dev/null +++ b/src/routes/locations/+server.js @@ -0,0 +1,18 @@ +import { json } from '@sveltejs/kit'; + +export async function GET({ fetch, setHeaders }) { + let r = await fetch('https://api.btcmap.org/v2/elements?updated_since=2022-09-19'); + + let locations = await r.json(); + locations = locations.filter( + (l) => l['osm_json'].tags && l['osm_json'].tags['payment:coinos'] === 'yes' + ); + + let headers = { + 'cache-control': 'public, max-age=600' + }; + + setHeaders(headers); + + return json({ locations }); +} -- cgit v1.2.3