我正在使用Microsoft Academic API的图搜索方法,使用以下查询检索纸质信息:
POST https://westus.api.cognitive.microsoft.com/academic/v1.0/graph/search?mode=json
Content-Type: application/json
Host: westus.api.cognitive.microsoft.com
Ocp-Apim-Subscription-Key: my-api-key
{
"path": "/paper",
"paper": {
"select": [
"PublishYear",
"CitationCount",
"ConferenceSeriesID",
"JournalID",
"AuthorIDs",
"AffiliationIDs",
"AuthorSequenceNumbers",
"OriginalAffiliations",
"NormalizedAffiliations",
"Keywords",
"FieldOfStudyIDs",
"ReferenceIDs",
"CitationIDs",
"OriginalTitle",
"NormalizedTitle",
"DOI",
"OriginalVenue",
"NormalizedVenue"
],
"type": "Paper",
"id": [2059999322, 1993355715, ...]
}
}
对于此查询,我收到三个响应之一:200 OK,500内部错误或503不可用(相同查询和相同的ID列表)。我只是尝试运行此查询(使用我在示例中列出的两个ID)五次,其中,我得到了3个正确的响应,以及2个错误。我的请求中是否存在导致此问题的内容,或者这是服务中的错误?
我的第二个问题是,在一个查询中我可以提交多少个ID?我试图在documentation page上查找此信息,但找不到任何内容(只是每次可以发送多少查询的速率限制,但与查询大小无关)。
编辑: 响应我得到错误500(使用上面的查询):
{
'Error':
{
'Message': 'Something went wrong, if the error continue please contact us',
'Code': 'InternalError'
}
}
错误503附带的响应对我来说是空的。
答案 0 :(得分:0)
我想我发现了问题所在。如果有人遇到同样的问题,似乎某些ID会返回错误。我把我的~150k ID集合缩小到20,总是失败。问题是如果一个错误的ID混合在一大堆很好的ID中,那么整个请求就会失败。