This repository has no description
0

Configure Feed

Select the types of activity you want to include in your feed.

at main 1.4 kB View raw
1const repo = "did:plc:qsctypxlsrippb5wculrsj7q"; 2const host = "knot1.tangled.sh"; 3const ref = "trunk"; 4 5const candidates = [ 6 `/xrpc/sh.tangled.repo.tree?repo=${repo}&ref=${ref}&path=`, 7 `/xrpc/sh.tangled.repo.getTree?repo=${repo}&ref=${ref}&path=`, 8 `/xrpc/sh.tangled.repo.index?repo=${repo}&ref=${ref}`, 9 `/xrpc/sh.tangled.repo.index?repo=${repo}`, 10 `/xrpc/sh.tangled.repo.readme?repo=${repo}&ref=${ref}`, 11 `/xrpc/sh.tangled.repo.getReadme?repo=${repo}&ref=${ref}`, 12 `/xrpc/sh.tangled.repo.tags?repo=${repo}&limit=100`, 13 `/xrpc/sh.tangled.repo.listFiles?repo=${repo}&ref=${ref}&path=`, 14 `/xrpc/sh.tangled.repo.files?repo=${repo}&ref=${ref}&path=`, 15 `/xrpc/sh.tangled.repo.blob?repo=${repo}&ref=${ref}&path=README.md`, 16 `/xrpc/sh.tangled.repo.getBlob?repo=${repo}&ref=${ref}&path=README.md`, 17 `/xrpc/sh.tangled.repo.entry?repo=${repo}&ref=${ref}&path=README.md`, 18]; 19 20for (const path of candidates) { 21 const url = `https://${host}${path}`; 22 try { 23 const ctrl = new AbortController(); 24 const t = setTimeout(() => ctrl.abort(), 10000); 25 const resp = await fetch(url, { signal: ctrl.signal, headers: { accept: "application/json" } }); 26 clearTimeout(t); 27 const txt = await resp.text(); 28 console.log(`[${resp.status}] ${path.split("?")[0].replace("/xrpc/", "")}`); 29 if (resp.ok) console.log(` -> ${txt.slice(0, 400).replace(/\n/g, " ")}`); 30 } catch (e) { 31 console.log(`[ERR] ${path} -> ${e.name}`); 32 } 33}