2012-04-24 9 views
1

FQLを使用して、ここに表示されているように、ユーザーが送信したURLがFacebookページかプロフィールかを検証します。Validate a Facebook page URLURLがFacebookページかプロフィールかどうかを確認するには?

これまでに働いたことがあります。 facebook.com/zuckやfacebook.com/cocacolaのようなURLを送ると、profile.phpまたは/ pages /でnormalized_urlが返されます。さて、同じURLを返します: facebook.com/zuck

これはFacebook APIのバグですか?あるいは、この問題を解決する別の方法がありますか?

答えて

2

おそらく、Facebook Graph APIを使用して、ページだけが持つプロパティを探します。たとえば、コカコーラAPIの返品(下記参照)は、ページが持つlikesを返します。また、description,websiteaboutlocationを検索することもできますが、ただ1つには依存しません。逆に、人はfirst_namelast_nameの傾向があります。これらを調和させて使用して、ユーザー名が人物かページかを判断します。

http://graph.facebook.com/zuck

{ 
    "id": "4", 
    "name": "Mark Zuckerberg", 
    "first_name": "Mark", 
    "last_name": "Zuckerberg", 
    "link": "https://www.facebook.com/zuck", 
    "username": "zuck", 
    "gender": "male", 
    "locale": "en_US" 
} 

http://graph.facebook.com/cocacola

{ 
    "id": "40796308305", 
    "name": "Coca-Cola", 
    "picture": "http://profile.ak.fbcdn.net/hprofile-ak-snc4/174560_40796308305_2093137831_s.jpg", 
    "link": "https://www.facebook.com/coca-cola", 
    "likes": 41519873, 
    "cover": { 
     "cover_id": "10150682306963306", 
     "source": "http://a7.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/416803_10150682306963306_40796308305_9337341_812683101_n.jpg", 
     "offset_y": 0 
    }, 
    "category": "Food/beverages", 
    "is_published": true, 
    "website": "http://www.coca-cola.com", 
    "username": "coca-cola", 
    "founded": "1886", 
    "description": "Created in 1886 in Atlanta, Georgia, by Dr. John S. Pemberton, Coca-Cola was first offered as a fountain beverage at Jacob's Pharmacy by mixing Coca-Cola syrup with carbonated water. \n\nCoca-Cola was patented in 1887, registered as a trademark in 1893 and by 1895 it was being sold in every state and territory in the United States. In 1899, The Coca-Cola Company began franchised bottling operations in the United States. \n\nCoca-Cola might owe its origins to the United States, but its popularity has made it truly universal. Today, you can find Coca-Cola in virtually every part of the world.", 
    "about": "The Coca-Cola Facebook Page is a collection of your stories showing how people from around the world have helped make Coke into what it is today.", 
    "location": { 
     "latitude": 53.71282619, 
     "longitude": -1.51214516 
    }, 
    "checkins": 92, 
    "talking_about_count": 383754 
} 
+0

これは非常に遅いですが、この解決策に感謝したいと思います。最後に、今すぐ実装する方法:) –

0

私は同じ問題に直面していると私は "is_published" または "好き" フィールドを見ることにしました。

関連する問題