Facebook graph api Facebook使用客户端令牌进行搜索

Facebook graph api Facebook使用客户端令牌进行搜索,facebook-graph-api,Facebook Graph Api,声称无需登录用户即可访问位置图功能: 您使用客户端令牌(来自客户端)和应用程序访问令牌(来自服务器)进行呼叫 说: 客户端令牌是一个标识符,您可以将其嵌入本机移动二进制文件或桌面应用程序中,以标识您的应用程序。客户端令牌并不意味着是一个秘密标识符,因为它嵌入在应用程序中 这听起来正是我想要的——我正在尝试建立一个允许用户搜索Facebook地点的网站。我需要能够使用来自客户端的AJAX请求构建列表 我一生都找不到任何关于使用客户机令牌发出此类请求的文档 请注意,我不能使用应用程序令牌,因为这将被

声称无需登录用户即可访问位置图功能:

您使用客户端令牌(来自客户端)和应用程序访问令牌(来自服务器)进行呼叫

说:

客户端令牌是一个标识符,您可以将其嵌入本机移动二进制文件或桌面应用程序中,以标识您的应用程序。客户端令牌并不意味着是一个秘密标识符,因为它嵌入在应用程序中

这听起来正是我想要的——我正在尝试建立一个允许用户搜索Facebook地点的网站。我需要能够使用来自客户端的AJAX请求构建列表

我一生都找不到任何关于使用客户机令牌发出此类请求的文档

请注意,我不能使用应用程序令牌,因为这将被部署到网站上,Facebook明确表示在这种情况下不要使用应用程序令牌

我已经尝试直接使用客户机令牌作为
access\u令牌
,但是我得到了无效的OAuth访问令牌。

如何使用客户端令牌从客户端浏览器直接调用Facebook的API


注意:我意识到我可以将请求发送到我自己的服务器,然后将该请求从我的服务器转发到Facebook,但这对我来说不是一个最佳解决方案。

以防有人像我一样仍在努力解决这个问题。您只需要使用appId和客户端令牌与管道连接。那么“appId | clientToken”是一个本地移动二进制或桌面应用程序的网站吗…?不,所以这在这里并不适用。@CBroe这个网站是一个混合应用程序。从技术上讲,它不是二进制或桌面应用程序,但这只是语义。它被称为客户端令牌,因为它在部署到客户端时标识您的应用程序。对我来说,这意味着我用什么语言编写“应用程序”,或者该语言是否编译成本机代码并不重要。谷歌API有专门为此设计的选项,这些选项将API密钥限制在浏览器使用范围内,并强制执行引用者字段;来自Facebook的客户端令牌似乎是同样的东西。但我仍然怀疑这是否有效,不太确定当你在设置中声明你的应用程序为桌面应用程序时,你是否可以在网站平台上使用Facebook登录功能。。。你必须试试。我确实试过(至少是我在问题中所说的努力),而且我的高级设置中的“本机或桌面应用程序”切换值设置为“否”,在“基本设置”下列出的唯一平台是“网站”,它仍然为我提供客户端令牌。这和第一个链接中的文档使我认为这是可能的。不过,第一句话中的“和”这个词有点令人沮丧。提到在iOS SDK中使用客户端令牌,提到在Android SDK中使用客户端令牌,-根本没有提到客户端令牌。我很确定SDK会以某种方式将其添加到传出的API请求中,但可能会进行哈希/加密或以其他方式进行隐藏。我从来没有见过有人提到过,你可以直接将自己添加到使用JSSDK或其他客户端web技术进行的API调用中。我得到了错误代码33。现在,通过连接appId和clientToken,我得到了错误代码190。。。response.getErrorMessage():无效的访问令牌签名。你解决过吗?非常感谢。