Java 使用多个帐户Twitter4j发送多条推文(提及)

Java 使用多个帐户Twitter4j发送多条推文(提及),java,authentication,twitter,twitter4j,Java,Authentication,Twitter,Twitter4j,我正在设计一个应用程序,使用它,用户可以从多个帐户发送多条tweet(提及),并使用Twitter4j实现同样的目的。关于这一点,我有几个问题: 身份验证:应用程序有一个身份验证部分。我可以使用基于PIN的身份验证(oob)进行身份验证。但我想知道是否有可能保留访问令牌,以便用户在安装应用程序时只需进行一次身份验证,此后再也不需要进行身份验证 异常处理:应用程序将发送多条tweet。因此我想知道如何检查异常,特别是暂停用户帐户 限制:每小时或每分钟发送推文的安全速率(我指的是两条推文之间的最小间

我正在设计一个应用程序,使用它,用户可以从多个帐户发送多条tweet(提及),并使用Twitter4j实现同样的目的。关于这一点,我有几个问题:

  • 身份验证:应用程序有一个身份验证部分。我可以使用基于PIN的身份验证(oob)进行身份验证。但我想知道是否有可能保留访问令牌,以便用户在安装应用程序时只需进行一次身份验证,此后再也不需要进行身份验证
  • 异常处理:应用程序将发送多条tweet。因此我想知道如何检查异常,特别是暂停用户帐户
  • 限制:每小时或每分钟发送推文的安全速率(我指的是两条推文之间的最小间隔)是多少。twitter是否也会检查机器的IP以暂停帐户?我的意思是,假设我需要发送60条tweet。如果我使用4个帐户,每个帐户发送15条tweet,并运行4个线程,那么这是否允许我在我的应用程序中发送更多tweet
  • 编辑 请注意,我正在制作一个桌面应用程序,而不是web应用程序。因此,基于PIN的身份验证是必要的。此外,我不确定访问令牌的有效期。使用OOB身份验证生成的访问令牌是否永远有效,以便我可以将其保存在数据库中,从而使用户只能进行一次身份验证?

    需要注意的几点:

    • 身份验证:可以在不使用基于pin的身份验证的情况下获取访问令牌,因为在创建应用程序时,必须指定回调url,因此不必复制和粘贴pin,相反,参数
      oauth\u verifier
      附加了回调url,您可以从url本身获取该url。使用此
      oauth\u验证器
      ,您可以获得前面提到的
      access\u令牌
      token\u secret
    • 异常处理:除了简单的
      try-catch
      之外,没有什么比这更有用的了
    • 限制:GET请求有两个初始存储桶:每15分钟15次呼叫,每15分钟180次呼叫。有关更多详细信息,请参阅
    编辑:对于桌面应用程序,没有其他选择,因此您必须进行基于pin的身份验证,而且由于twitter在Oauth1上工作,因此到目前为止,
    access\u token
    token\u secret
    的有效期为终生。因此,只需要一次身份验证,并且可以使用相同的令牌进行api调用。

    需要注意的几点:

    • 身份验证:可以在不使用基于pin的身份验证的情况下获取访问令牌,因为在创建应用程序时,必须指定回调url,因此不必复制和粘贴pin,相反,参数
      oauth\u verifier
      附加了回调url,您可以从url本身获取该url。使用此
      oauth\u验证器
      ,您可以获得前面提到的
      access\u令牌
      token\u secret
    • 异常处理:除了简单的
      try-catch
      之外,没有什么比这更有用的了
    • 限制:GET请求有两个初始存储桶:每15分钟15次呼叫,每15分钟180次呼叫。有关更多详细信息,请参阅

    编辑:对于桌面应用程序,没有其他选择,因此您必须进行基于pin的身份验证,而且由于twitter在Oauth1上工作,因此到目前为止,
    access\u token
    token\u secret
    的有效期为终生。因此,只需要一次身份验证,并且可以使用相同的令牌进行api调用。

    我欢迎您的回答,因为它清楚地显示了一些研究工作。因此a+1。但是,“不使用基于pin的身份验证就可以获得访问令牌”我不是在制作web应用,而是在制作桌面应用。(请参见编辑)。因此,它需要基于PIN的身份验证。现在我想说的是,我可以在我的桌面应用程序的数据库中保留访问令牌,这样就不需要一次又一次地进行身份验证吗?我欢迎你的回答,因为它清楚地表明了一些研究工作。因此a+1。然而,“不使用基于pin的身份验证就可以获得访问令牌”我不是在制作web应用程序,而是桌面应用程序。(请参见编辑)。因此它需要基于PIN的身份验证。现在我的问题是,我可以在桌面应用程序的数据库中保留访问令牌,这样就不需要一次又一次地进行身份验证了吗?