我正在尝试向维基百科发出几个Ajax请求。 Ajax调用位于for-loop(JavaScript)中,这是一个问题,因为它们不按顺序返回。为了解决这个问题,我想我会在Ajax请求中包含一个请求ID,就像他们的沙盒中的一个选项一样。问题是ID不会返回...?Wikipedia api不返回请求ID
(来自维基的sandbox)
https://en.wikipedia.org/wiki/Special%3aApiSandbox#action=opensearch&format=json&requestid=12&search=clownfish
回报:
[
"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"
]
]
没有的requestId。但是,当我将操作从“opensearch”更改为其他内容时,它确实会返回请求标识。
https://en.wikipedia.org/wiki/Special%3aApiSandbox#action=cspreport&format=json&requestid=12
回报:
{
"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。
这是预期的行为,还是我错过了什么?任何帮助,非常感谢:)
我无法在API文档中找到'requestid'参数的文档。你有链接到描述它的页面吗? – Barmar
对不起,我没有任何文档,除了它在沙箱中提到的内容(链接问题),它说:“此处给出的任何值都将包含在响应中,可用于区分请求。 ”。我只是不明白为什么它不应该包含在开放式搜索中?有任何想法吗? – user2267097
非常基本上解释了[这里](https://www.mediawiki.org/wiki/API:Main_module),它说:“requestid:这里给出的任何值都会包含在响应中,可以用来区分请求。1.14+“ – user2267097