问题标签 [http-status-code-429]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
microsoft-graph-api - Microsoft Graph for OneDrive 限制问题 - RetryAfter 属性为空
我们使用 Microsoft Graph.dll(版本 1.2.1)和 Microsoft.Graph.Core.dll(版本 1.3.1)来提取 OneDrive 文件夹和文件信息(有权限)。一年多来,我们一直在成功地做到这一点。这样做时,我们有时会受到限制。发生这种情况时,会引发“Microsoft.Graph.ServiceException”类型的异常。这有一个状态码。如果状态码是 429,那么我们知道我们已被限制,我们可以检查异常中的响应标头以提取所需的“RetryAfter”时间段。我相信通常 RetryPeriod 是 4000 毫秒。然而,我们最近才开始看到在这个属性中返回 null ——这似乎不正确,我们不相信我们以前见过它。
有没有其他人看到这个和/或有解决方法?有什么变化吗……?
非常感谢 ....
api - 批处理是否会导致 MSGraph API 中的 429 节流错误增加
我正在尝试使用 MSGraph API 使用列表、子节点和权限端点为域同步 oneDrive 文件(元数据和权限)。我正在对子节点和权限端点使用批处理,在单个批处理请求中同时为 10 个用户发送 10-20 个请求 URL。
这样做我得到了很多 429 错误。不过,我在进行单个(非批处理)调用时也遇到了 429 个错误。
根据与节流相关的文档,他们要求 1. 减少每个请求的操作数 2. 减少调用频率。
所以,我的问题是
批量调用 10 个获取 url,算作 10 个不同的操作和 10 个不同的调用吗?
multithreading - 当客户端是多线程的时,客户端对 HTTP 429 的正确反应是什么?
HTTP 状态代码 429 告诉发出请求的客户端在响应的 Retry-After 标头中指定的时间段后回退并重试请求。
在单线程客户端中,很明显,获取 429 的线程应该按照指示等待,然后重试。但是RFC明确指出
该规范没有定义源服务器如何识别用户,也没有定义它如何计算请求。
因此,在多线程客户端中,保守的方法将停止所有线程发送请求,直到 Retry-After 时间点。但:
- 许多线程可能已经超过了可以记录来自一个被拒绝线程的信息的程度,并且将至少再发送一个请求。
- 线程之间的全局同步可能很难实现和正确
- 如果设置不仅运行多个线程,还运行多个客户端,可能在不同的机器上,在一个 429 上支持所有这些线程变得不平凡。
有没有人有来自该领域的具体数据,云提供商的服务器实际上是如何处理这个问题的?如果我不全局阻止所有线程,他们会立即恶化吗?微软的建议是
- 等待 Retry-After 字段中指定的秒数。
- 重试请求。
- 如果请求再次失败并显示 429 错误代码,则您仍然受到限制。继续使用推荐的 Retry-After 延迟并重试请求,直到成功。
它两次说“请求”而不是“任何请求”或“所有请求”,但这是我不相信的法律类型的解释。
为了确保这不是一个意见问题,让我尽可能地以事实为基础来表述它:
是否有更详细的云 API 规范(Microsoft、Google、Facebook、Twitter)然后上面的示例允许我做出明智的决定,是否需要全局回退,或者是否足以回退得到的特定请求429?
java - 429 使用 aws-sdk 为 s3 对象生成预签名 URL 时请求过多
我有一个应用程序,它是一个数字资产管理系统。它显示缩略图。我将这些缩略图设置为与 AWS S3 预签名 URL 一起提供:https ://docs.aws.amazon.com/AmazonS3/latest/dev/ShareObjectPreSignedURLJavaSDK.html 。这段代码正在工作,直到我更改通过请求处理的项目数量。应用程序有 25、50、100、200 的选项。如果我选择 100 或 200,进程将失败并显示“错误:com.amazonaws.AmazonServiceException:请求过多(服务:null;状态代码:429;错误代码:null ; 请求 ID: null)"
现在的过程如下:执行搜索 > 通过返回该对象的预签名 url 的方法运行每个对象键。
我们通过 Elastic Container Service 运行这个应用程序,它允许我们通过 ContainerCredentialsProvider 提取凭证。
相关代码供审核:
这是我们处理项目的部分:
任何指导将不胜感激。希望有一个简单且有望在 AWS 端可配置的解决方案。否则,现在我正在考虑为此添加一个过程以批量生成 url。
java - 获取 HTTP 错误获取 URL。状态=429 使用 Jsoup
这是我的 Orbitz.com 自动化测试的一部分,我在其中搜索航班并希望使用 Jsoup 解析价格并使用它们。甚至在我真正开始解析 html 之前,我就收到了“HTTP error fetching URL.Status=429”异常。我已经阅读了所有关于它的内容。我发现我必须在获取 url 之前等待,以避免超出请求限制。我添加了 Thread.sleep(); 但是 Jsoup 无论如何都无法获取页面。我确信我错过了一些明显的东西,但不知道是什么。
python - 需要 API 来计算点之间的时间
我搜索可以计算点之间距离/时间的 HERE API。
或者解决我发现的 API 问题
下一个 API 的问题: - 车队远程信息处理航点序列:
https://developer.here.com/documentation/routing-waypoints/topics/quick-start-simple-car.html
几个请求后的异常是:
因此,请求数量为每天 10 个。但总的来说,在我的计划中每月 250K 交易,我不明白。
怎么可能改变它,因为我使用这个API来计算点之间的时间,10个请求是不够的。
或者也许有另一种方法可以不同地解决这个问题?
python - 如何解决 BioPython 中的 HTTP 错误 429?
我正在尝试使用 BioPython 通过输入登录号以及开始和结束位置来获取核苷酸序列。我需要获取许多序列,但该过程在 3 个序列后中止。我收到此错误:“urllib.error.HTTPError:HTTP 错误 429:请求过多”。会不会是我之前用 BioPython 跑爆破的次数太多了?完成我最后一项任务的对齐大约需要三周时间。这是否意味着我已被服务器阻止?
selenium-chromedriver - chromedriver在请求时导致状态码429
我在使用 Selenium WebDriver.chromedriver 获取 json 结果数据时遇到问题,服务器将响应 http 状态代码 429 太多请求。但是当我直接使用 chrome 来获取这个网址“ https://shop.coles.com.au/search/resources/store/20501/productview/2364711P ”时,它会正常工作。我想在服务器端有一些验证逻辑,但是如何交叉,请帮助非常感谢~
我明白了为什么通过服务器阻止下面的这个 js 代码检测到我使用 webdriver 然后阻止我,然后不创建 cookie ..
microsoft-graph-api - Microsoft Graph 异常 SubscriptionCountReached
我在创建calendar
subscription
using时得到了这个Microsoft Graph
。它抛出了这个异常
关于这意味着什么的任何想法?