ऐसा करने के लिए, सबसे पहले आपको आप ऐप के पहुंच टोकन प्राप्त करने की जरूरत है:
private string GetAppAccessToken() {
var fbSettings = FacebookWebContext.Current.Settings;
var accessTokenUrl = String.Format("{0}oauth/access_token?client_id={1}&client_secret={2}&grant_type=client_credentials",
"https://graph.facebook.com/", fbSettings.AppId, fbSettings.AppSecret);
// the response is in the form: access_token=foo
var accessTokenKeyValue = HttpHelpers.HttpGetRequest(accessTokenUrl);
return accessTokenKeyValue.Split('=')[1];
}
योग्य कुछ बातें उपरोक्त विधि के बारे में गौर करने योग्य
- मैं उपयोग कर रहा हूँ नेट HttpWebRequest ऐप access_token को पकड़ने के लिए फेसबुक सी # एसडीके की बजाय (संस्करण 5.011 आरसी 1 के रूप में) एसडीके एक सीरियलाइजेशन अपवाद फेंकता है। ऐसा लगता है कि एसडीके फेसबुक से जेएसओएन प्रतिक्रिया की उम्मीद कर रहा है, लेकिन फेसबुक फॉर्म में एक्सेस टोकन देता है: access_token = some_value (जो वैध JSON नहीं है)।
HttpHelpers.HttpGetRequest बस .Net's HttpWebRequest का उपयोग करता है। तुम बस के रूप में अच्छी तरह से WebClient उपयोग कर सकते हैं, लेकिन जो कुछ भी आप चुनते हैं, आप अंततः इस http अनुरोध बनाना चाहते:
प्राप्त https://graph.facebook.com/oauth/access_token?client_id=YOUR_APP_ID&client_secret=YOUR_APP_SECRET&grant_type=client_credentials HTTP/1.1 मेजबान: graph.facebook.com
अब जबकि आपके पास
public string GenerateAppRequest(string fbUserId) {
var appAccessToken = GetAppAccessToken();
var client = new FacebookClient(appAccessToken);
dynamic parameters = new ExpandoObject();
parameters.message = "Test: Action is required";
parameters.data = "Custom Data Here";
string id = client.Post(String.Format("{0}/apprequests", fbUserId), parameters);
return id;
}
इसी तरह, इस प्रकार आप एक उपयोगकर्ता के अनुप्रयोग के सभी अनुरोधों को पुनः प्राप्त कर सकते हैं:: नोट एप्लिकेशन ACCESS_TOKEN पुनः प्राप्त करने के लिए एक विधि है, तो आप इस प्रकार हैं (यहाँ मैं फेसबुक सी # SDK का उपयोग) एक ऐप अनुरोध उत्पन्न कर सकते हैं: आप probab ly "गतिशील" वापस नहीं करना चाहते हैं, लेकिन मैंने इसे सादगी के लिए यहां इस्तेमाल किया।
public dynamic GetAppRequests(string fbUserId) {
var appAccessToken = GetAppAccessToken();
var client = new FacebookClient(appAccessToken);
dynamic result = client.Get(String.Format("{0}/apprequests", fbUserId));
return result;
}
मुझे उम्मीद है कि इससे मदद मिलती है।
स्रोत
2011-05-09 06:59:26
पहुंच/पूछताछ तक पहुंच मानती है कि उपयोगकर्ता ने आपके आवेदन को प्रमाणित/स्थापित किया है, सही? – typeoneerror
मुझे विश्वास नहीं है कि उपयोगकर्ता को आपके ऐप को प्रमाणित करना होगा। फेसबुक के दस्तावेज़ीकरण के मुताबिक, आपको केवल अपने ऐप एक्सेस टोकन की आवश्यकता है: http://developers.facebook.com/docs/reference/api/user/ –
नहीं। मेरे ऐप एक्सेस टोकन के साथ परीक्षण किया गया और अभी भी "पैरामीटर आईडी में सभी उपयोगकर्ताओं को TOS स्वीकार कर लिया होगा" – typeoneerror