超出限额 - 自定义Twitter应用程序

rhi*_*nds 8 java twitter twitter4j

我正在使用java Twitter应用程序(使用Twitter4J api).我创建了应用程序,可以查看当前用户的时间表,用户的个人资料等.

但是,当使用该应用程序时,它似乎很快超过了在Twitter客户端上设置的每小时费率限制的150个请求(我知道开发人员可以在给定帐户上将此值增加到350,但这对其他用户无法解决).

当然这不影响所有客户,任何关于如何解决这个问题的想法?

有谁知道什么算作请求?例如,当我查看用户的配置文件时,我加载User对象(twitter4j)然后获取要放入JSON对象的屏幕名称,用户名,用户描述,用户状态等 - 这将是一次获取对象的调用或者几个包括所有user.get ...调用?

提前致谢

Jon*_*nna 4

在与 Twitter 打交道时,您确实需要跟踪当前的请求计数。

然而,twitter 似乎并没有删除 304 Not Modified 的计数(至少我上次处理它时没有),因此请确保没有任何东西破坏您对 HTTP 缓存的正常使用以及您的实际请求每小时上涨。

请注意,twitter 在 apache 上的 mod_gzip 中遇到了一个错误,其中电子标签在更改时格式错误,以反映内容编码与非 gzip 压缩实体的内容编码不同(这是正确的做法,有只是实现中的一个错误)。因此,接受来自 Twitter 的 gzip 内容意味着它永远不会发送 304,这会增加您的请求计数,并且在许多情况下会破坏使用 gzip 带来的效率提升。

因此,如果您接受 gzip(您的网络库默认情况下可能会这样做,请查看使用 Fiddler 之类的工具可以看到什么,我是一个 .NET 人员,只有一点 Java 知识,回答的级别是 twitter处理 HTTP,所以我不知道 Java Web 库的详细信息),尝试将其关闭,看看它是否会改善情况。