gpt4 book ai didi

node.js - Google 搜索控制台 API,google.webmasters.searchanalytics.query "startDate field is required"

转载 作者:太空宇宙 更新时间:2023-11-03 23:59:21 26 4
gpt4 key购买 nike

我正在尝试使用 Google Search Console API (nodejs) 来检索查询报告。我们拥有一个谷歌帐户,其中配置了我公司的所有域。我们希望从 api 检索完整的域列表,然后从每个域获取数据。

我们能够正确获取完整的域列表。但我们可以获得它们的任何数据。

这是代码的简短示例。

// auth is the json web token
// domain is the url of the managed domain, example: https://www.asdfg.hif

async function getDomainData(auth, domain){
p = {
auth : auth,
siteUrl : domain,
startDate : '2019-03-01',
endDate : '2019-03-31'
};

try{
portalData = await google.webmasters('v3').searchanalytics.query(p);

console.log( portalData );

return portalData ;
}catch(error){
console.log('Error %s: %s', domain, error);
return null;
}
}//getDomainData

但是我总是收到以下错误。这确实是不言自明的。但我无法理解它,因为我在 p 对象中提供了 startDate 和 endDate 参数。我尝试过不同的日期格式,单引号,双引号,无引号...无论我更改什么,我总是收到必填字段错误。

GaxiosError: startDate field is required.
GaxiosError: endDate field is required.

我可以在 Google Search API 控制台中看到错误,因此我认为错误来自服务器,而不是来 self 的代码中的某些内容。

通过 API Explorer,我可以毫无错误地测试 API。

我不知道这会是什么,但这似乎是一件很愚蠢的事情。

最佳答案

这个修改怎么样?

在 Node.js 的 googleapis 中,请求正文放在 resource 中。因此,在您的情况下,startDateendDate放入resource中。

来自:

p = {
auth : auth,
siteUrl : domain,
startDate : '2019-03-01',
endDate : '2019-03-31'
};

致:

p = {
auth: auth,
siteUrl: domain,
resource: {
startDate: '2019-03-01',
endDate: '2019-03-31'
}
}

引用:

关于node.js - Google 搜索控制台 API,google.webmasters.searchanalytics.query "startDate field is required",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55477442/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com