क्या ग्राफ़ एपीआई का उपयोग करके उपयोगकर्ता द्वारा पसंद किए गए पृष्ठ नाम और अनुयायियों की संख्या (केवल नाम और अनुयायी और कोई अन्य डेटा नहीं) निकालने का कोई विश्वसनीय तरीका है।

यह मेरा कोड अब तक सी # में है।

using System.Threading.Tasks;

namespace ConsoleApplication
{
public interface IFacebookService
{
    Task<Account> GetAccountAsync(string accessToken);
    Task PostOnWallAsync(string accessToken, string message);
}

public class FacebookService : IFacebookService
{
    private readonly IFacebookClient _facebookClient;

    public FacebookService(IFacebookClient facebookClient)
    {
        _facebookClient = facebookClient;
    }

    public async Task<Account> GetAccountAsync(string accessToken)
    {
        var result = await _facebookClient.GetAsync<dynamic>(
            accessToken, "me", "fields=id,name,email,first_name,last_name,age_range,birthday,gender,locale,location,website,likes,feed");

        if (result == null)
        {
            return new Account();
        }

        var account = new Account
        {
            Id = result.id,
            Email = result.email,
            Name = result.name,
            UserName = result.username,
            FirstName = result.first_name,
            LastName = result.last_name,
            Gender = result.gender,
            Birthday = result.birthday,
            Locale = result.locale,
            Location = result.location.name,
            Website = result.website,
            Likes = result.likes.data,
            Feed = result.feed.data
        };

        return account;
    }

    public async Task PostOnWallAsync(string accessToken, string message)
        => await _facebookClient.PostAsync(accessToken, "me/feed", new {message});
}  
}

पसंद किए गए पृष्ठों का आउटपुट कुछ इस प्रकार है:

{
  "name": "Richard Dawkins",
  "id": "1376933789198289",
  "created_time": "2018-01-04T08:21:24+0000"
},

जैसा कि आप देख सकते हैं, यह डेटा देता है जो अनावश्यक है, जैसे आईडी और create_time। मुझे केवल नाम और अनुयायियों की संख्या में दिलचस्पी है, इसलिए मैं पृष्ठों को वर्णानुक्रम में और पसंद की संख्या के अनुसार क्रमबद्ध कर सकता हूं। किसी भी विचार की सराहना की जाती है।

0
user5923820 4 जिंदा 2018, 18:10

1 उत्तर

सबसे बढ़िया उत्तर

उपयोगकर्ता प्रोफ़ाइल के अनुयायियों तक पहुँचने का कोई तरीका नहीं है। यदि आपको पसंद किए गए पृष्ठों के लिए अतिरिक्त फ़ील्ड चाहिए:

/me?fields=likes{name,fan_count}

या:

/me/likes?fields=name,fan_count

हालांकि, पसंद के अनुसार कोई वर्णानुक्रमिक छँटाई या छँटाई नहीं है, आपको डेटा प्राप्त करने के बाद इसे स्वयं करना होगा। साथ ही, आप उन लोगों की संख्या नहीं प्राप्त कर सकते जो "अनुसरण करें" पृष्ठ, केवल पसंद की संख्या।

आपको कौन-से फ़ील्ड मिल सकते हैं, यह जानने के लिए API दस्तावेज़ देखें: https:// Developers.facebook.com/docs/graph-api/reference/page

0
luschn 4 जिंदा 2018, 18:46