如何允许用户以页面身份登录,然后使用C#Facebook SDK以该页面发布?
这个问题并不含糊,也没有关于它之前关闭的原因。这实际上是一个非常简单明了的问题。
如何允许用户使用C#Facebook登录和发布到页面?得到多少简单和直接?
答案 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/