Twitter oAuth callbackUrl - localhost开发

110 twitter oauth

是否有其他人难以获得Twitters oAuth的回调URL以访问他们的localhost开发环境.显然它最近被禁用了.http://code.google.com/p/twitter-api/issues/detail?id=534#c1

有没有人有解决方法.我真的不想阻止我的发展

Ton*_*ony 135

备选方案1.

设置.hosts(Windows)或etc/hosts文件,将实时域指向localhost IP.如:

127.0.0.1 xyz.com

其中xyz.com是您的真实域名.

备选方案2.

此外,该文章还提供了使用URL缩短服务的技巧.缩短本地URL并将结果作为回调提供.

备选方案3.

此外,似乎它可以提供例如http://127.0.0.1:8080作为Twitter的回调,而不是http://localhost:8080.

  • 这可能导致以下错误:远程服务器返回错误:(401)未经授权? (3认同)

Ada*_*dam 27

我上周必须这样做.显然localhost不起作用,但127.0.0.1Go的数字.

这当然假设您正在使用Twitter注册两个应用程序,一个用于您的直播www.mysite.com,另一个用于127.0.0.1.


Zam*_*ith 10

只需将http://127.0.0.1:xxxx/作为回调URL,其中xxxx是框架的端口


小智 8

已编辑回调网址

http://localhost:8585/logintwitter.aspx
Run Code Online (Sandbox Code Playgroud)

转换成

http://127.0.0.1:8585/logintwitter.aspx
Run Code Online (Sandbox Code Playgroud)


ari*_*kfr 7

是的,由于最近在OAuth中发现的安全问题,它已被禁用.目前唯一的解决方案是创建两个OAuth应用程序 - 一个用于生产,一个用于开发.在开发应用程序中,您可以设置localhost回调URL而不是实时URL.


Thd*_*hdK 7

这就是我做到的方式:

已注册的回拨网址:http: //127.0.0.1/Callback.aspx

   OAuthTokenResponse authorizationTokens = 
        OAuthUtility.GetRequestToken(ConfigSettings.getConsumerKey(), 
                                     ConfigSettings.getConsumerSecret(), 
                                     "http://127.0.0.1:1066/Twitter/Callback.aspx");
Run Code Online (Sandbox Code Playgroud)

ConfigSettings:

public static class ConfigSettings
{
    public static String getConsumerKey()
    {
        return System.Configuration.ConfigurationManager.AppSettings["ConsumerKey"].ToString();
    }

    public static String getConsumerSecret()
    {
        return System.Configuration.ConfigurationManager.AppSettings["ConsumerSecret"].ToString();
    }

}
Run Code Online (Sandbox Code Playgroud)

Web.config文件:

<appSettings>

    <add key="ConsumerKey" value="xxxxxxxxxxxxxxxxxxxx"/>
    <add key="ConsumerSecret" value="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"/>

</appSettings>
Run Code Online (Sandbox Code Playgroud)

确保将项目的属性"使用动态端口"设置为"false",然后输入静态端口号.(我用了1066).

我希望这有帮助!


Mob*_*Mob 7

使用http://smackaho.st

它的作用是与127.0.0.1的简单DNS关联,它允许您绕过localhost或127.0.0.1上的过滤器:

smackaho.st.28800 IN A 127.0.0.1

因此,如果您点击该链接,它将显示您在本地网络服务器上的内容(如果您没有,则会获得404).您当然可以将其设置为您想要的任何页面/端口:

http://smackaho.st:54878/twitter/callback

  • smackaho.st不再可用http://tbaggery.com/2010/03/04/smack-a-ho-st.html.请改用lvh.me.它直接转到localhost. (6认同)
  • 现在这是一个死链接 (2认同)

小智 5

我在本地主机上使用Twitter回调URL。如果不确定如何创建虚拟主机(这很重要),请使用Ampps。他真的很酷很轻松。在几个步骤中,您将拥有自己的虚拟主机,然后每个URL都可以在其上工作。例如:

  1. 下载并安装ampps

  2. 添加新域。(例如,您可以在此处设置twitter.local),这意味着您的虚拟主机将是http://twitter.local,它将在步骤3之后运行。

  3. 我正在Win上工作,因此转到您的主机文件-> C:\ Windows \ System32 \ Drivers \ etc \ hosts并添加以下行:127.0.0.1 twitter.local

重新启动Ampps,即可使用回调。您可以指定任何URL,即使您正在使用某些框架MVC或具有htaccess url重写。

希望这个帮助!干杯。