【发布时间】:2013-07-08 18:55:45
【问题描述】:
我正在为网站生成 OpenSearch 插件。我大部分时间都在那里,事实上,当搜索中只有一个词时,插件就可以工作。我应该注意,这不是您的标准搜索引擎,它为您的搜索中的单词提供了相关关键字的映射。问题似乎是该搜索引擎的行为与其他搜索引擎的行为略有不同。例如,使用谷歌搜索“项目管理”的 URL 如下所示:
http://www.google.com/search?q=project+management
而使用 KwMap,您的搜索显示如下:
http://www.kwmap.net/project-management.html
所以我的问题是是否可以使用 OpenSearch 将搜索词中的空格替换为破折号而不是加号?到目前为止,这是我的代码:
<?xml version="1.0" encoding="UTF-8"?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/"
xmlns:moz="http://www.mozilla.org/2006/browser/search/">
<!-- Created on Wed, 10 Jul 2013 17:26:47 GMT -->
<ShortName>KwMap</ShortName>
<Description>A Keyword Map for the Whole Internet</Description>
<Url type="text/html" method="get" template="http://www.kwmap.net/{searchTerms}.html"/>
<InputEncoding>UTF-8</InputEncoding>
<moz:SearchForm>http://www.kwmap.net/</moz:SearchForm>
<Url type="application/opensearchdescription+xml" rel="self"/>
</OpenSearchDescription>
【问题讨论】:
-
我很确定这是不可能的,因为这超出了标准的 URL 编码方法。我确信 kwmap.net 必须提供一种方法来获取标准查询字符串 URL 并将其重写为自己的专有格式,不是吗?
-
我想知道这是否可以用正则表达式来完成。我发现最接近的是groups.google.com/forum/#!topic/opensearch/N5_hm58Peqc 的讨论。
标签: firefox search search-engine opensearch