代码之家  ›  专栏  ›  技术社区  ›  Dustin Laine

ASP.NET MVC Facebook

  •  1
  • Dustin Laine  · 技术社区  · 15 年前

    我试图做一件看似简单的事情,但却很难完成。我正在尝试自动在我的Facebook墙上发帖。基本上,我有一个ASP.NET MVC网站,我发布更新,我想自动提交到我的墙上。

    我在FBConnect上看到很多东西,我只是想发布。

    感谢您的帮助或指导。

    更新: 只是想复活,在我的描述中更清楚一点,因为我什么也得不到。

    我想要一个带文本框和按钮的页面。当我提交表单时,我希望邮件发送到 我的 脸谱网墙。我以为是Facebook Connect,但我不知道如何自动验证自己的身份并贴到我的墙上。

    我想使用C而不是JavaScript。

    private const string ApplicationKey = "XXXXXXXXXXXXXXXXXXXXXXXXXXXX";
    private const string SecretKey = "XXXXXXXXXXXXXXXXXXXXXXXXXX";
    private Facebook.Rest.Api _facebookAPI;
    private Facebook.Session.ConnectSession _connectSession;
    
    [AcceptVerbs(HttpVerbs.Post)]
    public ActionResult Index(FormCollection form)
    {
        _connectSession = new Facebook.Session.ConnectSession(ApplicationKey, SecretKey);
        if (_connectSession.IsConnected())
        {
            _facebookAPI = new Facebook.Rest.Api(_connectSession);
            string response = _facebookAPI.Stream.Publish("This is a generated test");
        }
            return View();
        }
    }
    

    isConnected()正在返回false。 感谢您的帮助。

    2 回复  |  直到 12 年前
        1
  •  1
  •   Dustin Laine    15 年前

    这段代码是正确的,问题是我没有将应用程序添加到我的配置文件中。愚蠢的小姐,但我的想法是整个事情都没有很好的记录。我对离线访问有另一个问题,但这是针对另一个帖子的。

    string apiKey = "XXXXXXXXX";
    string apiSecret = "XXXXXXXXXXXX";
    Facebook.Session.ConnectSession._connectSession = new Facebook.Session.ConnectSession(apiKey, apiSecret);
    if (_connectSession.IsConnected)
    {
        Facebook.Rest.Api api = new Facebook.Rest.Api(_connectSession);
        string response = api.Stream.Publish("Test", null, null, null, api.Users.Session.UserId);
    }
    
        2
  •  0
  •   Mathias Lykkegaard Lorenzen    12 年前

    可能是您在本地主机上测试了您的网站。当你在本地主机上测试你的网站时,facebook cookie不会被写出来。看到这个链接 http://forum.developers.facebook.net/viewtopic.php?pid=247332

    这可以解决您的问题:

    1. 将“127.0.0.1 localhost.local”添加到文件中
    2. 更新FB应用程序连接设置以使用“http://localhost.local/”url和“localhost.local”域。
    3. 在端口80上创建名为“localhost.local”的IIS网站。我不得不停止我的默认网站,它也在端口80上
    4. 更新我的Visual Studio 2010 Web应用程序以使用带有“http://localhost.local/”URL的IIS。

    要查看cookies,请确保安装fireccookies以及firebug。