check alreadyHaves from system.cacheRelay
This commit is contained in:
parent
eb9f23b73b
commit
13a773a1ad
@ -1,4 +1,4 @@
|
||||
/*
|
||||
Content-Security-Policy: default-src 'self'; manifest-src *; child-src 'none'; worker-src 'self'; frame-src youtube.com www.youtube.com https://platform.twitter.com https://embed.tidal.com https://w.soundcloud.com https://www.mixcloud.com https://open.spotify.com https://player.twitch.tv https://embed.music.apple.com https://embed.wavlake.com https://challenges.cloudflare.com; style-src 'self' 'unsafe-inline'; connect-src *; img-src * data: blob:; font-src 'self'; media-src * blob:; script-src 'self' 'wasm-unsafe-eval' https://platform.twitter.com https://embed.tidal.com https://challenges.cloudflare.com;
|
||||
Content-Security-Policy: default-src 'self'; manifest-src *; child-src 'none'; worker-src 'self'; frame-src https://youtube.com https://www.youtube.com https://platform.twitter.com https://embed.tidal.com https://w.soundcloud.com https://www.mixcloud.com https://open.spotify.com https://player.twitch.tv https://embed.music.apple.com https://embed.wavlake.com https://challenges.cloudflare.com; style-src 'self' 'unsafe-inline'; connect-src *; img-src * data: blob:; font-src 'self'; media-src * blob:; script-src 'self' 'wasm-unsafe-eval' https://platform.twitter.com https://embed.tidal.com https://challenges.cloudflare.com;
|
||||
Cross-Origin-Opener-Policy: same-origin
|
||||
Cross-Origin-Embedder-Policy: require-corp
|
@ -75,11 +75,13 @@ export class DefaultConnectionPool extends EventEmitter<NostrConnectionPoolEvent
|
||||
this.#log("%s have: %s %o", c.Address, s, id);
|
||||
if (this.#requestedIds.has(id)) {
|
||||
this.#log("HAVE: Already requested from another relay %s", id);
|
||||
// TODO if request to a relay fails, try another relay. otherwise malicious relays can block content.
|
||||
return;
|
||||
}
|
||||
this.#requestedIds.add(id);
|
||||
if (await this.#system.eventsCache.get(id)) {
|
||||
// TODO better local cache / db check
|
||||
// is this performant? should it be batched?
|
||||
const alreadyHave = await this.#system.cacheRelay?.query(["REQ", id, {ids: [id]}]);
|
||||
if (alreadyHave?.length) {
|
||||
this.#log("HAVE: Already have %s", id);
|
||||
return;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user