From 622199e27cc3bcf1989e9051990191af3169a913 Mon Sep 17 00:00:00 2001 From: b1rdmania <102524336+b1rdmania@users.noreply.github.com> Date: Mon, 29 Dec 2025 11:05:22 +0000 Subject: [PATCH] Add debug logging to BitMidi search + better headers MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Log fetch URL, response status, and HTML size - Use realistic Chrome User-Agent headers - Helps diagnose Cloudflare blocking on Vercel 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- server/src/adapters/BitMidiAdapter.ts | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/server/src/adapters/BitMidiAdapter.ts b/server/src/adapters/BitMidiAdapter.ts index e381938..58e9ccb 100644 --- a/server/src/adapters/BitMidiAdapter.ts +++ b/server/src/adapters/BitMidiAdapter.ts @@ -8,17 +8,25 @@ export class BitMidiAdapter implements SearchAdapter { async search(query: string): Promise { try { const searchUrl = `${this.baseUrl}/search?q=${encodeURIComponent(query)}`; + console.log(`BitMidi: Fetching ${searchUrl}`); + const response = await fetch(searchUrl, { headers: { - 'User-Agent': 'Mozilla/5.0 (compatible; MotifBot/1.0)' + 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36', + 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8', + 'Accept-Language': 'en-US,en;q=0.5', } }); + console.log(`BitMidi: Response status ${response.status}`); + if (!response.ok) { throw new Error(`BitMidi search failed: ${response.status}`); } const html = await response.text(); + console.log(`BitMidi: Got ${html.length} bytes, has initStore: ${html.includes('window.initStore')}`); + return this.parseSearchResults(html, query); } catch (error) { console.error('BitMidi search error:', error);