Warning:
This wiki has been archived and is now read-only.
HTML5/system-state-and-capabilities
From HTML5 Chinese Interest Group Wiki
< HTML5
Contents
系统状态及性能
客户端标识
自定义协议和内容处理
安全和隐私
用户界面示例
手动释放存储互斥量
External
接口
Window
接口的external属性必须返回一个External
接口的实例。每次都必须返回同一个对象。
interface External { void AddSearchProvider(DOMString engineURL); unsigned long IsSearchProviderInstalled(DOMString engineURL); };
此区块中不是标准描述,实现要求在下面给出。
window . external . AddSearchProvider( url )
增加一个url处OpenSearch描述文档中描述的搜索引擎。[OPENSEARCH]
OpenSearch描述文档必须与调用该方法的脚本存在于同一个服务器上。
installed = window . external . IsSearchProviderInstalled( url )
根据将url与已安装的搜索引擎的结果页URL进行比较,返回一个值。
- 0
没有已安装的搜索引擎匹配该url。 - 1
一个或多个已安装的搜索引擎匹配该url,但它们都不是用户的默认搜索引擎。 - 2
用户的默认搜索引擎匹配该url。
使用前缀匹配法比较url与已安装的搜索引擎的结果页URL。仅检查域名与调用该方法的脚本相同的结果页。
AddSearchProvider()方法,在调用时,必须执行下列步骤:
- 可以跳过这些步骤。用户代理可以将该方法实现为一个不进行任何操作的存根方法,或者可以依据安全、隐私或可用性原因自行忽略使用特定参数的调用。
- 相对于入口脚本的基础URL处理该方法第一个参数的值。
- 如果处理失败,则跳过这些步骤。
- 将生产的相对URL处理为一个OpenSearch描述文档的URL。[OPENSEARCH]
IsSearchProviderInstalled()方法,在调用时,必须执行下列步骤:
- 可以返回0并跳过这些步骤。用户代理可以将该方法实现为一个不进行任何操作的存根方法,或者可以依据安全、隐私或可用性原因自行忽略使用特定参数的调用。
- 如果入口脚本的源是一个不透明标识符(例如,其没有主机部分),则返回0并跳过这些步骤。
- 设host1为入口脚本的源的主机部分。
- 相对于入口脚本的基础URL处理参数scriptURL。
- 如果处理失败,则返回0并跳过这些步骤。
- 设host2为生成的相对URL的<host>部分。
- 如果公共后缀列表中匹配host1结尾的最长后缀与公共后缀列表中匹配host2结尾的最长后缀不同,则返回0并跳过这些步骤。[PSL]
如果host1和host2中它们共同的后缀之后的域名部分不相同,则返回0并跳过这些步骤。
域名标签必须在应用了设置了AllowUnassigned和UseSTD3ASCIIRules标志的IDNA ToASCII算法之后,在ASCII不区分大小写机制下进行比较。[RFC3490] - 设搜索引擎为用户代理已知的搜索引擎中URL前缀匹配产生的相对URL的搜索引擎的列表,并使这些搜索引擎对用户可用。对于使用OpenSearch描述文档注册的搜索引擎,搜索引擎的URL相当于
rel
属性为“results
”(默认)的Url
元素给出的URL。[[OPENSEARCH]] - 如果搜索引擎为空,则返回0并跳过这些步骤。
- 如果用户的默认搜索引擎(由用户代理决定)是搜索引擎中的一个搜索引擎,则返回2并跳过这些步骤。
- 返回1。