为何Microsoft Azure文本翻译请求触发"超出请求限制"错误?
Azure翻译API 429001错误疑问
问题详情
向Microsoft Azure文本翻译API发送翻译请求时,收到错误码429001,报错信息为:“服务器拒绝请求,因为客户端已超出请求限制”。该请求包含190个HTML字符串,总内容长度为45099。
根据Azure翻译API官方服务限制文档,内容长度限制为50000,可翻译字符串数限制为1000,当前请求远低于这两个阈值。
发送仅包含2个HTML字符串的短请求可正常运行,已通过命令行工具httpie复现问题,最初该问题出现在Java代码发起的HTTPS请求中,两种场景结果一致。使用的是“F0免费”Azure订阅层级。
核心疑问
- 为何会收到429错误码?是文档存在错误,还是对文档的理解有误?
- 429000、429001和429002均描述为“超出请求限制”,三者有何区别?
请求与响应示例(隐去密钥和区域信息)
POST /translate?api-version=3.0&from=de&to=en&textType=html HTTP/1.1 Connection: keep-alive Content-Length: 45099 User-Agent: Java/17.0.1 Accept: application/json; charset=UTF-8 Content-Type: application/json; charset=UTF-8 Ocp-Apim-Subscription-Key: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Ocp-Apim-Subscription-Region: XXXXXXXXXXXXXXXXXX Host: api.cognitive.microsofttranslator.com [{"Text":"<DIV/><DIV/> <DIV/> <DIV/> <DIV/><DIV/><DIV/>Geringe Entdeckungswahrscheinlichkeit der Fehlfunktion, da Nachweisverfahren unsicher bzw. keine Erfahrung mit dem festgelegten Nachweisverfahren<DIV/><DIV/> "},{"Text":"<DIV/><DIV/.... verhindert<DIV/>"}] Response: HTTP/1.1 429 Too Many Requests Date: Wed, 22 Nov 2023 09:20:34 GMT Content-Type: application/json; charset=utf-8 Transfer-Encoding: chunked Connection: keep-alive Access-Control-Expose-Headers: X-RequestId X-RequestId: 5d465614-96dc-42b1-a676-ed5fb08fa641.EUWE.1122T0920 X-Content-Type-Options: nosniff Strict-Transport-Security: max-age=31536000; includeSubDomains {"error":{"code":429001,"message":"The server rejected the request because the client has exceeded request limits."}}
内容的提问来源于stack exchange,提问作者Blixtor
相关产品推荐
相关产品推荐

