强制Google Chrome使用OpenSearch.xml中的POST

时间:2017-06-14 15:07:13

标签: html xml google-chrome search server

我运行DuckDuckStart网站,该网站试图利用OpenSearch标准XML文件允许浏览器发现它并将该网站用作浏览器的默认搜索引擎。 (我个人在Firefox和Chrome中使用它。)(我已经使用最新的Chrome版本进行了测试:版本59.0.3071.86(官方版本)(64位))

但是,即使将网址参数中的方法强制为 POST ,Google Chrome也会始终发送 GET 请求服务器而不是 POST

通过多功能框(地址栏)提交文字时,有没有办法强制 Chrome使用POST方法?

以下是我opensearch.xml文件的当前迭代:

    <?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/">
    <ShortName>DuckDuckStart</ShortName>
    <LongName>DuckDuckStart Web Search</LongName>
    <Description>DuckDuckStart passes !bang's to DuckDuckGo and everything else to Startpage</Description>
    <InputEncoding>UTF-8</InputEncoding>
    <OutputEncoding>UTF-8</OutputEncoding>
    <AdultContent>false</AdultContent>
    <Language>en-us</Language>
    <Developer>Michael Yanovich</Developer>
    <Contact>webmaster@duckduckstart.com</Contact>
    <Tags>duckduckgo startpage search</Tags>
    <Attribution>DuckDuckGo and Startpage</Attribution>
    <SyndicationRight>open</SyndicationRight>
    <Query role="example" searchTerms="Apple !i"/>
    <Image height="16" width="16" type="image/x-icon">https://duckduckstart.com/favicon.ico</Image>
    <Url type="text/html" rel="results" template="https://duckduckstart.com/" method="POST">
        <Param name="query" value="{searchTerms}" method="POST"/>
    </Url>
    <Url type="application/opensearchdescription+xml" rel="self" template="https://duckduckstart.com/opensearch.xml"/>
</OpenSearchDescription>

有什么想法吗?

我尝试过使用 POST 的几个不同的<URL>参数  方法,但没有一种方法可行。

我已阅读OpenSearch Standard,并尝试了互联网上的其他几个例子。大多数示例都使用了 GET 方法,但是少数涵盖 POST 方法的方法并不起作用,并且无法正常工作。自从Chrome 39以来,我一直在Chrome版本中对其进行随便测试。

PS:我一直在使用的备份方法,它违背了网站的目的,是手动配置Chrome以指向&#34;添加其他搜索引擎&#34中的https://duckduckstart.com/?query=%s ;在设置中。

1 个答案:

答案 0 :(得分:0)

目前看来,这是Chromium中记录的“错误”,并且暂时没有触及。

看起来没人在积极地工作。 : - (

https://crbug.com/18107