2017-06-19 29 views
0

我正在对Facebook Graph API运行查询来获取有关URL的OG元信息。使用Facebook APP令牌,我可以请求大多数URL并获取相应的元数据。但是我遇到了两个我无法找到解决方案的问题。我有一个域名拒绝使用APP令牌提取任何元信息。相反,我得到一个错误100(不支持的发布请求)。但是当我使用用户访问令牌进行相同的请求时,它可以正常工作。我发现的第二个问题是,当一个URL有任何类型的OG错误时,Facebook仍然在抓它,但会返回100错误,而不是返回元信息(包括应用程序令牌和用户访问令牌)。我甚至试图运行没有scrape参数的查询,无济于事。Facebook图形API URL刮擦不一致

Normal Request That Returns Meta Fields of URL: 

POST: 
    https://graph.facebook.com/v2.9/ 
    { 
     "id": "http://viralcrunch.com/articles/22325/these-guys-invented-the-anti-smart-phone-and-it-will-blow-your-mind", 
     "scrape": "true" 
    } 

Request That Returns 100 Unsupported post request Error W/ App Token 

POST: 
    https://graph.facebook.com/v2.9/ 
    { 
     "id": "http://turnthispage.com/dads-totally-winning-fatherhood/", 
     "scrape": "true" 
    } 

Request That Returns 100 Invalid Object Error W/ Any Token 

POST: 
    https://graph.facebook.com/v2.9/ 
    { 
     "id": "http://www.thesportster.com/basketball/top-20-nba-players-who-live-life-to-the-fullest/", 
     "scrape": "true" 
    } 
+0

第二个URL似乎与设置了某种访问限制的应用程序的应用程序ID相关联;所以我想这跟你试图访问Facebook页面的访问限制信息是一样的,你不能查询任何有关使用应用访问令牌的细节,你需要为用户使用一个用户访问令牌允许查看该页面的内容或页面访问令牌。 – CBroe

+0

而你得到的第三个错误答案似乎只是自然的。毕竟,这是一个旨在调试和刮除_you_所控制的Open Graph对象的工具,所以如果OG元数据不是为了它_should_会返回一个错误。 – CBroe

+0

@CBroe您可以将此作为答案,以便我可以接受它!实际上帮了我很多! –

回答

0

第二网址似乎与具有某种设置访问限制的应用程序的应用程序ID相关联;所以我想这和你试图访问Facebook页面的访问限制信息是一样的 - 你不能查询任何有关使用应用访问令牌的细节,你需要为用户使用用户访问令牌允许查看该页面的内容或页面访问令牌。

而你得到的第三个错误答案似乎只有自然。毕竟,这是一个旨在调试和删除您所控制的Open Graph对象的工具,因此如果OG元数据不合适,它应该返回一个错误。