如何允许用户以页面身份登录,然后使用C#Facebook SDK以该页面发布?

时间:2011-10-11 14:24:24

标签: c# facebook facebook-c#-sdk facebook-page facebook-login

如何允许用户以页面身份登录,然后使用C#Facebook SDK以该页面发布?

这个问题并不含糊,也没有关于它之前关闭的原因。这实际上是一个非常简单明了的问题。

如何允许用户使用C#Facebook登录和发布到页面?得到多少简单和直接?

1 个答案:

答案 0 :(得分:3)

我决定发布这个答案,因为我很好奇我将如何通过C#来做这件事,因为我现在正试着自学它。

没有任何代码经过测试,但我只是希望我可以使用网络上的信息来尝试将基本内容放在一起,只需稍加调整即可为您提供适合的功能。

万一你还没找到它,你会找到Facebook C#SDK和一个例子here

为了让用户管理页面,他们必须遵循文档here中指定的身份验证流程。

为此,您要求用户正常使用您的APP_ID授权您的应用,但您需要权限manage_pages和publish_stream:

https://www.facebook.com/dialog/oauth?
 client_id=YOUR_APP_ID&redirect_uri=YOUR_URL&scope=manage_pages,publish_stream&
 response_type=token

那么通过任何可能的方式(浏览器窗口?),您必须让用户接受权限,以允许您的应用程序访问用户的页面。

从那时起,一旦用户接受了,您可以进行简单的API调用(get和POST),如示例所示,此时它正在显示:

JSONObject me = api.Get("/4");
Console.WriteLine(me.Dictionary["name"].String);

这是user_id'4',Mark Zuckerberg。

因此,通过查看C#SDK Core,有一个名为api.MakeRequest()的函数,所以我猜你做了类似的事情:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Facebook;

namespace FacebookSampleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            // Get an access token in some manner.
            // By default you can only get public info.
            string token = null;

            Facebook.FacebookAPI api = new Facebook.FacebookAPI(token);

            var parameters = new Dictionary
            {
               { "message",  'Wow, I love Google!' },
               { "name" ,  'Google' },
               { "description" ,  'Description of post' },
               { "picture", 'http://www.google.com/logo.png' },
               { "caption" ,  'This is google.com' },
               { "link" ,  'http://www.google.com' },
               { "type" , "link" }
            };

            JSONObject wallPost = api.MakeRequest("/[PAGE_ID]/feed", 'POST', parameters);

        }
      }
    }

我毫不怀疑这段代码不能直接使用,它会进行一些试验和错误,但我希望我能以某种方式帮助你。

随机来源:

http://www.jamescrowley.co.uk/2011/02/03/posting-to-facebook-page-using-c-sdk-from-offline-app/ http://developers.facebook.com/docs/reference/api/post/ https://github.com/facebook/csharp-sdk/blob/master/examples/Program.cs http://developers.facebook.com/tools/explorer/?method=GET&path=2439131959 http://developers.facebook.com/docs/reference/api/page/