将 SDK 的 url 转换为 nsIURI

Convert SDK's url to nsIURI

是否有正确的方法来转换 nsIURL to an Addon url

它们共享许多属性,但在某些方面有所不同 (f.ex。插件 url 有一个 .hash 属性,其中 nsIURLref).

是否建议简单地使用 属性 (duck typing) 进行故障转移 (f.ex. url.hash || url.ref) 或者是否有一种简单的方法可以在它们之间进行转换?

事实证明这很难做到,因为类型既不兼容也不总是完整的。

作为解决方法,在内部使用 uri.spec 字符串,并且仅在某些方法需要时才进行转换。