Javascript 有没有一种方法可以通过一个从WikipediaAPI获取请求来搜索页面并提取其信息?

Javascript 有没有一种方法可以通过一个从WikipediaAPI获取请求来搜索页面并提取其信息?,javascript,async-await,wikipedia-api,Javascript,Async Await,Wikipedia Api,我正在尝试编写这个函数,它获取一个搜索字符串,并返回它得到的第一个结果, 然而,在上述结果中,我只得到页面url和一些其他基本信息,没有id,没有页面内容 我想把它作为一个单一的json来获取,而不需要再提出另一个请求。 这种方法也不管用, 因为即使我只发送标题,它似乎也找不到页面 有没有可能,我可以提取网页信息不知何故没有图像和链接以及 我目前的职能: async function getVideosWikiInfo(term) { if (!term) term = 'Nto'

我正在尝试编写这个函数,它获取一个搜索字符串,并返回它得到的第一个结果, 然而,在上述结果中,我只得到页面url和一些其他基本信息,没有id,没有页面内容

我想把它作为一个单一的json来获取,而不需要再提出另一个请求。 这种方法也不管用, 因为即使我只发送标题,它似乎也找不到页面

有没有可能,我可以提取网页信息不知何故没有图像和链接以及

我目前的职能:

async function getVideosWikiInfo(term) {
    if (!term) term = 'Nto'
    const searchRes= await fetch(`https://en.wikipedia.org/w/api.php?&origin=*& action=opensearch&search=${term}&titles&limit=1`).then(res=>res.json())
    const searchUrl= searchRes[3][0]
    const pageTitle=searchUrl.substr(30,searchUrl.length-1)
    console.log(pageTitle);
    const res = await  fetch(`http://en.wikipedia.org/w/api.php?action=query&prop=extracts&format=json&exintro=&titles=${pageTitle}`)
    console.log(res);
}
您可以使用而不是
titles
参数,但是这意味着您必须使用而不是OpenSearchAPI

url将类似于

`http://en.wikipedia.org/w/api.php?action=query\
&prop=extracts&exintro=\
&generator=search&gsrsearch=${term}&gsrlimit=1\
&format=json`

使用搜索(而不是opensearch)作为生成器将尝试感谢您,您能解释为什么吗?无法使其正常工作您应该避免使用opensearch API。它适用于OpenSearch客户端(如浏览器的搜索栏),其他客户端在进行破坏性更改时不会被考虑。