Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/450.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 维基百科api没有';t返回请求id_Javascript_Ajax_Wikipedia Api_Wikimedia - Fatal编程技术网

Javascript 维基百科api没有';t返回请求id

Javascript 维基百科api没有';t返回请求id,javascript,ajax,wikipedia-api,wikimedia,Javascript,Ajax,Wikipedia Api,Wikimedia,我正在尝试向维基百科发出几个Ajax请求。Ajax调用位于for循环(JavaScript)中,这是一个问题,因为它们返回的顺序不正确。为了解决这个问题,我想我应该在Ajax请求中包含一个请求ID,这是他们的沙盒中的一个选项。问题是ID没有返回 (来自维基媒体的) 返回: [ "clownfish", [ "Clownfish", "Clown" ], [ "To the scientific name of an

我正在尝试向维基百科发出几个Ajax请求。Ajax调用位于for循环(JavaScript)中,这是一个问题,因为它们返回的顺序不正确。为了解决这个问题,我想我应该在Ajax请求中包含一个请求ID,这是他们的沙盒中的一个选项。问题是ID没有返回

(来自维基媒体的)

返回:

[
    "clownfish",
    [
        "Clownfish",
        "Clown"
    ],
    [
        "To the scientific name of an organism: This is a redirect from a vernacular (\"common\") name to the scientific name of an organism (or group of organisms).",
        "Clowns are comic performers who employ slapstick or similar types of physical comedy, often in a mime style."
    ],
    [
        "https://en.wikipedia.org/wiki/Clownfish",
        "https://en.wikipedia.org/wiki/Clown"
    ]
]
{
    "error": {
        "code": "cspreport-wrongformat",
        "info": "Error processing CSP report: wrongformat.",
        "*": "See https://en.wikipedia.org/w/api.php for API usage."
    },
    "requestid": "12",
    "servedby": "mw1194"
}
没有请求ID。但是,当我将操作从“opensearch”更改为其他操作时,它确实会返回一个请求id

https://en.wikipedia.org/wiki/Special%3aApiSandbox#action=cspreport&format=json&requestid=12
返回:

[
    "clownfish",
    [
        "Clownfish",
        "Clown"
    ],
    [
        "To the scientific name of an organism: This is a redirect from a vernacular (\"common\") name to the scientific name of an organism (or group of organisms).",
        "Clowns are comic performers who employ slapstick or similar types of physical comedy, often in a mime style."
    ],
    [
        "https://en.wikipedia.org/wiki/Clownfish",
        "https://en.wikipedia.org/wiki/Clown"
    ]
]
{
    "error": {
        "code": "cspreport-wrongformat",
        "info": "Error processing CSP report: wrongformat.",
        "*": "See https://en.wikipedia.org/w/api.php for API usage."
    },
    "requestid": "12",
    "servedby": "mw1194"
}
如您所见,此响应确实包含requestid


这是预期的行为,还是我遗漏了什么?非常感谢您的帮助:)

我以前从未使用过MediaWiki API,但根据我刚才所做的,opensearch不会返回requestid。我去了,它回来了


{
    "batchcomplete": "",
    "requestid": "10",
    "query": {
        "pages": {
            "15580374": {
                "pageid": 15580374,
                "ns": 0,
                "title": "Main Page",
                "revisions": [
                    {
                        "contentformat": "text/x-wiki",
                        "contentmodel": "wikitext",
                        "*": "\n{| id=\"mp-topbanner\" style=\"width:100%; background:#f9f9f9; margin:1.2em 0 6px 0; border:1px solid #ddd;\"\n| style=\"width:61%; color:#000;\" |\n\n{| style=\"width:280px; border:none; background:none;\"\n| style=\"width:280px; text-align:center; white-space:nowrap; color:#000;\" |\nWelcome to [[Wikipedia]],\nthe [[free content|free]] [[encyclopedia]] that [[Wikipedia:Introduction|anyone can edit]].\n[[Special:Statistics|{{NUMBEROFARTICLES}}]] articles in [[English language|English]]\n|}\n\n| style=\"width:13%; font-size:95%;\" |\n* [[Portal:Arts|Arts]]\n* [[Portal:Biography|Biography]]\n* [[Portal:Geography|Geography]]\n| style=\"width:13%; font-size:95%;\" |\n* [[Portal:History|History]]\n* [[Portal:Mathematics|Mathematics]]\n* [[Portal:Science|Science]]\n| style=\"width:13%; font-size:95%;\" |\n* [[Portal:Society|Society]]\n* [[Portal:Technology|Technology]]\n* '''[[Portal:Contents/Portals|All portals]]'''\n|}\n\n{{#if:{{Main Page banner}}|\n\n{{Main Page banner}}\n\n\n}}\n\n{| id=\"mp-upper\" style=\"width: 100%; margin:4px 0 0 0; background:none; border-spacing: 0px;\"\n\n| class=\"MainPageBG\" style=\"width:55%; border:1px solid #cef2e0; background:#f5fffa; vertical-align:top; color:#000;\" |\n{| id=\"mp-left\" style=\"width:100%; vertical-align:top; background:#f5fffa;\"\n| style=\"padding:2px;\" | {{#ifexpr:{{formatnum:{{PAGESIZE:Wikipedia:Today's featured article/{{#time:F j, Y}}}}|R}}>150|From today's featured article|Featured article (Check back later for today's.)}}\n|-\n| style=\"color:#000;\" | {{#ifexpr:{{formatnum:{{PAGESIZE:Wikipedia:Today's featured article/{{#time:F j, Y}}}}|R}}>150|{{Wikipedia:Today's featured article/{{#time:F j, Y}}}}|{{Wikipedia:Today's featured article/{{#time:F j, Y|-1 day}}}}}}\n|-\n| style=\"padding:2px;\" | Did you know...\n|-\n| style=\"color:#000; padding:2px 5px 5px;\" | {{Did you know}}\n|}\n| style=\"border:1px solid transparent;\" |\n\n| class=\"MainPageBG\" style=\"width:45%; border:1px solid #cedff2; background:#f5faff; vertical-align:top;\"|\n{| id=\"mp-right\" style=\"width:100%; vertical-align:top; background:#f5faff;\"\n| style=\"padding:2px;\" | In the news\n|-\n| style=\"color:#000; padding:2px 5px;\" | {{In the news}}\n|-\n| style=\"padding:2px;\" | On this day...\n|-\n| style=\"color:#000; padding:2px 5px 5px;\" | {{Wikipedia:Selected anniversaries/{{#time:F j}}}}\n|}\n|}\n{{#switch:{{CURRENTDAYNAME}}|Monday|Friday=\n\n\n\n\n\nFrom today's featured list\n\n{{#ifexist:Wikipedia:Today's featured list/{{#time:F j, Y}}|{{Wikipedia:Today's featured list/{{#time:F j, Y}}}}|{{TFLempty}}}}\n\n\n\n\n|}}\n\n{| id=\"mp-lower\" style=\"margin:4px 0 0 0; width:100%; background:none; border-spacing: 0px;\"\n| class=\"MainPageBG\" style=\"width:100%; border:1px solid #ddcef2; background:#faf5ff; vertical-align:top; color:#000;\" |\n{| id=\"mp-bottom\" style=\"width:100%; vertical-align:top; background:#faf5ff; color:#000;\"\n| style=\"padding:2px;\" | {{#ifexist:Template:POTD protected/{{#time:Y-m-d}}|Today's featured picture | Featured picture (Check back later for today's.)}}\n|-\n| style=\"color:#000; padding:2px;\" | {{#ifexist:Template:POTD protected/{{#time:Y-m-d}}|{{POTD protected/{{#time:Y-m-d}}}}|{{POTD protected/{{#time:Y-m-d|-1 day}}}}}}\n|}\n|}\n\n\n== Other areas of Wikipedia ==\n{{Other areas of Wikipedia}}\n\n== Wikipedia's sister projects ==\n{{Wikipedia's sister projects}}\n\n== Wikipedia languages ==\n{{Wikipedia languages}}\n\n\n{{Main Page interwikis}}{{noexternallanglinks}}{{#if:{{Wikipedia:Main_Page/Tomorrow}}||}}__NOTOC____NOEDITSECTION__"
                    }
                ]
            }
        }
    }
}
如您所见,它有一个requestid。我认为MediaWiki不支持在所有操作上使用requestid

根据我的实验,这是预期的行为。

规范不允许额外的返回值,如requestid。这也是为什么opensearch模块有一个参数将警告视为错误,因为它也不能返回警告


试着改用。这与action=opensearch的结果相同,但采用MediaWiki action API的标准格式。

在API文档中查找
requestid
参数的文档时遇到问题。你有描述它的页面的链接吗?很抱歉,除了沙箱(有问题的链接)中的内容外,我没有任何文档,其中的内容是:“此处给出的任何值都将包含在响应中。可能用于区分请求。”。我只是不明白为什么它不应该包括在公开搜索中?有什么想法吗?基本上也解释过了,上面写着:“requestid:这里给出的任何值都将包含在响应中。可能用于区分请求。1.14+”我怀疑这是一个bug,它不适用于此操作,你可能应该报告它。我发布了一个bug,正如你建议的@Barmar。失范者在这里和维基媒体上都回答了这个问题。以下是所有感兴趣的人的URL:这个答案只是重申了它在问题中所说的内容。