story-research-zapwall/lib/api/nip95-upload/proxyRequestErrors.ts
2026-01-13 17:23:28 +01:00

18 lines
800 B
TypeScript

import { getErrnoCode } from './systemErrors'
export function handleProxyRequestError(params: { error: unknown; targetEndpoint: string; hostname: string }): Error {
const errorMessage = params.error instanceof Error ? params.error.message : 'Unknown request error'
const errorCode = getErrnoCode(params.error)
if (errorCode === 'ENOTFOUND' || errorCode === 'EAI_AGAIN') {
console.error('NIP-95 proxy DNS error:', {
targetEndpoint: params.targetEndpoint,
hostname: params.hostname,
errorCode,
errorMessage,
suggestion: 'Check DNS resolution or network connectivity on the server',
})
return new Error(`DNS resolution failed for ${params.hostname}: ${errorMessage}`)
}
return params.error instanceof Error ? params.error : new Error(errorMessage)
}