请求调用在任务队列上失败,连接中止,权限被拒绝
Request call fails on Task queue with Connection aborted, Permission denied
当我直接调用 OpenCalais API 时,一切似乎都很好,我收到了一个 200 请求。
然而,当我将相同的代码放入 GAE 任务队列时,奇怪的事情发生了:
response = requests.post('https://api.thomsonreuters.com/permid/calais/',
data=news.body.encode('utf8'),
timeout=60,
headers={'x-ag-access-token': 'xxx',
'content-type': 'TEXT/RAW',
'outputFormat': 'Application/JSON',
'enableMetadataType': 'SocialTags'})
该行立即抛出异常:
('Connection aborted.', error(13, 'Permission denied'))
起初我以为我可能每秒点击 api 的次数太多了。所以我在那里设置了一个断点。但是对 API 的第一次调用因该异常而中断。我不明白为什么,因为当我直接执行该功能时,它可以与 200 return.
无缝连接到 API
我已经联系了 OpenCalais 支持,他们可以看到有 13 个成功的请求,这些都是手动请求。但是他们在日志中看不到任何 error/failures。所以它绝对是站在我这边的。但它会是什么?
这是GAE 的缺陷。如果我降级到 requests 2.1.0
它在 GAE 上工作正常。
我已经提出了 GAE 的错误。欢迎给问题加注星标以推动修复。
https://code.google.com/p/googleappengine/issues/detail?id=11942&thanks=11942&ts=1431082804
当我直接调用 OpenCalais API 时,一切似乎都很好,我收到了一个 200 请求。
然而,当我将相同的代码放入 GAE 任务队列时,奇怪的事情发生了:
response = requests.post('https://api.thomsonreuters.com/permid/calais/',
data=news.body.encode('utf8'),
timeout=60,
headers={'x-ag-access-token': 'xxx',
'content-type': 'TEXT/RAW',
'outputFormat': 'Application/JSON',
'enableMetadataType': 'SocialTags'})
该行立即抛出异常:
('Connection aborted.', error(13, 'Permission denied'))
起初我以为我可能每秒点击 api 的次数太多了。所以我在那里设置了一个断点。但是对 API 的第一次调用因该异常而中断。我不明白为什么,因为当我直接执行该功能时,它可以与 200 return.
无缝连接到 API我已经联系了 OpenCalais 支持,他们可以看到有 13 个成功的请求,这些都是手动请求。但是他们在日志中看不到任何 error/failures。所以它绝对是站在我这边的。但它会是什么?
这是GAE 的缺陷。如果我降级到 requests 2.1.0
它在 GAE 上工作正常。
我已经提出了 GAE 的错误。欢迎给问题加注星标以推动修复。
https://code.google.com/p/googleappengine/issues/detail?id=11942&thanks=11942&ts=1431082804