有什么方法(除了必须添加自定义代码)来检查我的应用程序是否超出了允许的 YQL 限制?(不确定在我的情况下是否适用每个应用程序限制或每个 IP 限制)我假设在达到限制后所有查询都会失败,但我想积极主动地添加措施以防止这种情况发生。
我在应用程序的关键部分中使用 YQL,由于每隔几秒就会发出一次查询,我怀疑我可能已接近极限。
有什么方法(除了必须添加自定义代码)来检查我的应用程序是否超出了允许的 YQL 限制?(不确定在我的情况下是否适用每个应用程序限制或每个 IP 限制)我假设在达到限制后所有查询都会失败,但我想积极主动地添加措施以防止这种情况发生。
我在应用程序的关键部分中使用 YQL,由于每隔几秒就会发出一次查询,我怀疑我可能已接近极限。
不幸的是,在其他情况下也会返回错误代码 999,因此它不是达到每小时 10k 限制的可靠指标。
来自 Yahoo/YQL 的响应示例:
HTTP/1.1 999 Unable to process request at this time -- error 999
Date: Sun, 07 Nov 2010 13:46:10 GMT
Expires: Thu, 01 Jan 1970 22:00:00 GMT
Cache-Control: no-cache, private
Cache-Control: no-store
Pragma: no-cache
Vary: Accept-Encoding
Content-Type: text/html;charset=UTF-8
Age: 0
Transfer-Encoding: chunked
Connection: keep-alive
Server: YTS/1.17.21
我认为如果 YQL 可以像 Twitter 那样返回一个包含每小时剩余 YQL 调用的标题字段,那就太好了。
Twitter API 的 HTTP 响应标头的相关部分:
HTTP/1.1 200 OK
Date: Sun, 07 Nov 2010 13:52:18 GMT
X-RateLimit-Limit: 150
X-RateLimit-Remaining: 147
X-RateLimit-Class: api
X-Revision: DEV
X-RateLimit-Reset: 1289141505
如果您超过每小时 10k 次点击的限额,您将收到代码 999 的错误 - 请相应地编写代码以避免被阻止。