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

ION链发布DID文档后短URI无法解析问题求助

ION链DID短格式URI解析失败问题求助

将Decentralized Identify (DID)文档发布到ION链后,短格式URI无法正常解析,返回404错误。此前长、短URI均可在ION浏览器和UniResolver服务中成功获取完整DID文档,但自7月28日起短URI解析失效,长URI仍可正常使用。

示例代码

import { anchor, DID, generateKeyPair } from '@decentralized-identity/ion-tools';

// Generate keys and ION DID
let authnKeys = await generateKeyPair();
let did = new DID(..);

// Generate and publish create request to an ION node
let createRequest = await did.generateRequest(0);
// anchor: post and publish DID document to https://beta.ion.msidentity.com/api/v1.0/proof-of-work-challenge
let anchorResponse = await anchor(createRequest);
console.log(anchorResponse) 
let uri = await did.getURI();
let shortURI = await did.getURI('short');
console.log("Long URI "+ uri+ "\nShort URI: "+ shortURI);

代码复制自@decentralized-identity/ion-tools仓库的Readme,其中anchor()方法负责将DID文档提交到ION链(比特币L2网络)。

排查与修正建议

  • 验证短URI生成规范:检查did.getURI('short')生成的短格式是否为did:ion:[唯一标识符]的标准形式,避免包含长URI的冗余片段。
  • 确认锚定流程有效性:
    • 查看anchorResponse的返回状态与数据,确保创建请求已成功上链,未出现工作量证明失败、节点返回错误等异常。
    • 核对提交的createRequest是否包含完整的DID文档元数据,关键字段缺失可能导致短URI映射失效。
  • 检查解析服务状态:
    • 公共解析服务可能存在临时维护,可直接调用ION官方节点的解析接口测试短URI,验证是否为服务端问题。
    • 确认解析服务已同步最新ION协议规则,短URI解析依赖节点的映射服务,规则未更新会导致解析失败。
  • 重新生成并锚定DID:
    • 使用最新版本的@decentralized-identity/ion-tools重新生成DID并完成锚定,旧版本工具可能存在短URI兼容性问题。
    • 锚定后等待足够的链上确认时间(ION基于比特币L2,需等待区块确认),再尝试解析短URI。
  • 检查DID文档合规性:确保DID文档符合W3C DID规范,无格式错误或无效字段,否则解析服务可能拒绝返回文档。

相关截图

  • 404错误提示:
    404 DID Document not found
  • 创建注册日志及代码示例:
    Creation and Registration log, and the sample code IonProofOfWork::submitIonRequest()
  • GitHub仓库中DID文档URI定义:
    DID Document URI definiton in GITHUB repository

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 02:10:25