我有一個網站,我已經註冊爲一個Facebook應用程序 - 我現在有一個應用程序ID。使用asp.net發表評論到Facebook牆
我的網站是ASP.net C#。當用戶點擊一個按鈕時,我希望它將預定義的消息發佈到他們的牆上。我期待Facebook向用戶展示登錄對話框 - 他們登錄並授予我的網站應用的發佈權限。
有沒有人有任何示例代碼會這樣做?我認爲我需要使用圖形API,但是我看過的所有示例都使用PHP--我對此一無所知。我正在尋找一個使用Java腳本(我幾乎什麼都不知道)或C#(美麗!)的例子。
*更新*
我設法拿到的access_token。現在我通過Facebook C#API打電話發佈到牆上。我得到的錯誤信息:
(#803),有些要求你不存在的別名:PROFILE_ID
我已經通過API代碼階梯,發現它正試圖發佈到以下地址:{https://graph.facebook.com/PROFILE_ID/feed},發佈數據爲:message = Sample + message + from + c%23 + sdk & access_token = 199209316768200 | 2.1avFTZuDGR4HJ7jPFeaO3Q __。3600.1302897600.1- 100000242760733 | R4DkNDf4JCb6B2F64n5TSQwBqvM
我很確定我的令牌應該是有效的。此前請求訪問令牌我要求publish_stream上的應用程序授權請求如下:
Response.Redirect ("https://www.facebook.com/dialog/oauth?client_id=" + myAppId + "&redirect_uri=" + myURL + "&scope=publish_stream");
該SDK代碼,實際上使請求如下:
private string MakeRequest(Uri url, HttpVerb httpVerb,
Dictionary<string, string> args)
{
if (args != null && args.Keys.Count > 0 && httpVerb == HttpVerb.GET)
{
url = new Uri(url.ToString() + EncodeDictionary(args, true));
}
HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
request.Method = httpVerb.ToString();
if (httpVerb == HttpVerb.POST)
{
string postData = EncodeDictionary(args, false);
ASCIIEncoding encoding = new ASCIIEncoding();
byte[] postDataBytes = encoding.GetBytes(postData);
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = postDataBytes.Length;
Stream requestStream = request.GetRequestStream();
requestStream.Write(postDataBytes, 0, postDataBytes.Length);
requestStream.Close();
}
try
{
using (HttpWebResponse response
= request.GetResponse() as HttpWebResponse)
{
StreamReader reader
= new StreamReader(response.GetResponseStream());
return reader.ReadToEnd();
}
}
任何人都可以看到我在做什麼錯誤?
非常感謝,
Rob。
我確實有看看,但文件似乎缺乏。我感覺這可能需要一週的時間來攀登這條學習曲線!我真的需要在本週末有所作爲:| – 2011-04-08 18:50:32
好的,我寫了一篇關於使用Facebook Connect的文章:http://www.devproconnections.com/article/aspnet2/how-to-use-the-facebook-connect-api-in-an-asp-net-web-應用;臉譜團隊http://www.facebook.com/developers也有很好的信息。 – 2011-04-08 19:42:24
感謝Brian,但是現在Connect API已經被Graph API取代了嗎? – 2011-04-11 11:13:54