feat: Use X-Swarm-Source-Domain header to identify the sender's node domain in chat messages.

This commit is contained in:
Christomatt
2026-01-29 06:58:17 +01:00
parent 645e9a6670
commit 1f115d569f
2 changed files with 15 additions and 6 deletions
+11 -5
View File
@@ -39,11 +39,17 @@ export async function POST(request: NextRequest) {
const parts = handle.split('@');
senderNodeDomain = parts[parts.length - 1];
} else {
// Try handle registry (though we likely don't have it if we don't have the user)
const registryEntry = await db.query.handleRegistry.findFirst({
where: eq(handleRegistry.did, did)
});
if (registryEntry) senderNodeDomain = registryEntry.nodeDomain;
// Try to get from header first
const sourceDomainHeader = request.headers.get('X-Swarm-Source-Domain');
if (sourceDomainHeader) {
senderNodeDomain = sourceDomainHeader;
} else {
// Try handle registry (though we likely don't have it if we don't have the user)
const registryEntry = await db.query.handleRegistry.findFirst({
where: eq(handleRegistry.did, did)
});
if (registryEntry) senderNodeDomain = registryEntry.nodeDomain;
}
}
if (senderNodeDomain) {