You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

登录触发SES_UNHANDLED_REJECTION错误:relays[url]未定义求助

错误原因排查

错误SES_UNHANDLED_REJECTION: TypeError: relays[url] is undefined的核心原因是:你直接调用了nip07signer.user()返回的user对象的fetchProfile()方法,但这个user对象并未关联到你初始化的ndk实例的中继(relay)配置,导致拉取资料时无法找到对应的relay引用。

解决方法

修改代码,使用ndk.getUser()创建的user2对象调用fetchProfile(),而非nip07signer返回的user。通过ndk实例创建的用户对象会自动绑定ndk配置的relays,能正常执行资料拉取操作。

修正后的代码示例:

console.log('nostr login');

const nip07signer = new NDKNip07Signer();
const ndk = new NDK({
    signer: nip07signer,
    explicitRelayUrls: ['wss://relay.damus.io', 'wss://relay.nostr.band']
});

await ndk.connect();

const user = await nip07signer.user();
console.log('user:', user);
const user2 = ndk.getUser({
    npub: user.npub,
});
console.log('user2:', user2);
// 改用user2调用fetchProfile
const profile = await user2.fetchProfile();
console.log('profile:',profile);
补充说明
  • nip07signer.user()仅返回包含用户基本标识(如npub)的对象,未与ndk的relay系统绑定,无法独立执行需要中继交互的操作。
  • 所有需要和Nostr网络交互的操作,都应使用通过ndk实例创建或关联的对象执行,确保获取正确的relay配置。

内容的提问来源于stack exchange,提问作者chovy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 03:37:50