如何在本地测试twitter API?

如何在本地测试twitter API?,twitter,oauth,Twitter,Oauth,我正在尝试编写一个通过OAuth使用Twitter的web应用程序 我以“localhost”的形式运行本地服务器,所以我需要回调URL,但Twitter不喜欢这样:不是有效的URL格式 我可能会做很多测试,但一旦我用我的用户名批准了我的应用程序,我就不能再测试了,对吗?我应该创建多个twitter帐户吗?或者,你可以删除一个应用程序,然后再做一次吗 您是否尝试过创建自己的缓存机制?您可以获取初始查询的结果,将其缓存在本地线程上,并在给定过期时间后从Twitter刷新。这将允许您根据Twitte

我正在尝试编写一个通过OAuth使用Twitter的web应用程序

  • 我以“localhost”的形式运行本地服务器,所以我需要回调URL,但Twitter不喜欢这样:不是有效的URL格式

  • 我可能会做很多测试,但一旦我用我的用户名批准了我的应用程序,我就不能再测试了,对吗?我应该创建多个twitter帐户吗?或者,你可以删除一个应用程序,然后再做一次吗


  • 您是否尝试过创建自己的缓存机制?您可以获取初始查询的结果,将其缓存在本地线程上,并在给定过期时间后从Twitter刷新。这将允许您根据Twitter数据测试应用程序,而不会招致呼叫惩罚。

    1。)不要使用localhost。那没用。为什么不建立另一个服务器实例或从slicehost获取一个测试vm切片

    2.)您可能需要一组不同的用户帐户和两个不同的OAuth密钥/机密凭据进行测试

    不过,您的思路是正确的:通过测试取消应用程序的凭据。这应该很优雅地发生。您可能希望在访问令牌信息旁边存储一个状态值,以便将令牌标记为已撤销。

    Twitter对API GET调用的“速率限制”基于调用方的IP地址。因此,您可以使用相同的IP地址从服务器上测试应用程序,并获得(一旦批准)每小时15000个API调用。这意味着你可以用许多不同的用户名敲打你的应用程序,只要你批准的IP地址保持不变

    当您向Twitter发送电子邮件要求提高您的费率限制时,您也可以要求提高您的Twitter用户名

    我相信Twitter要求你——如果你需要更改你的IP地址,或者更改使用该应用程序的用户名——发送另一个请求,要求增加该新IP地址或用户名的速率限制。但是,根据我的经验,推特很快就解决了这些请求(可能不到48小时?)

  • 您可以使用
    127.0.0.1
    而不是
    localhost

  • 你可以从同一个twitter帐户授权你的应用程序任意次数,而无需撤销它。但是,authenticate操作只会提示允许/拒绝一次,所有后续的身份验证请求都将通过,直到您撤销该权限为止

  • 在回答(1)时,请参阅此帖子,特别是episod的回复:


    无论你在dev.twitter.com上的应用程序管理页面中放置了什么回调URL(只要你不使用localhost)。作为OAuth令牌请求的一部分,您提供了“真实”回调URL。

    还有另一种解决方案(一种变通方法),它要求您编辑
    主机
    文件

    以下是如何在linux机箱上执行此操作:

  • 将您的
    /etc/hosts
    文件作为
    根目录打开。为此,您可以打开一个终端并键入类似于
    sudo vi/etc/hosts
    的内容

  • 选择一个不存在的域作为您的本地地址,并将其添加到您的
    主机
    文件中。例如,您需要在末尾添加类似于以下内容的内容

    127.0.0.1 localhost.cep # this domain name was accepted.
    
  • 差不多就是这样。将浏览器指向
    localhost.cep
    将带您进入本地服务器。希望对你有帮助。
    :)

    像这样使用 网址: 对于回调URL: 或您的任何页面地址,如