这样做的方法是使用“Web 登录流程(无 JavaScript SDK)”api来获取用户访问令牌。需要使用图形 api 查询发送用户访问令牌才能获取页面帖子。
第一步是在 facebook 上创建一个应用程序,您可以在其中指定您希望程序能够通过图形 api 访问哪些信息。最终用户稍后将选择接受这些权限。
该程序创建一个 Web 浏览器框架并导航到https://www.facebook.com/dialog/oauth?client_id={app-id}&redirect_uri=https://www.facebook.com/connect/login_success.html&response_type=token
响应类型“令牌”意味着当(嵌入式)Web 浏览器被重定向到redirect_uri
用户访问令牌时,将作为片段添加到 url 的末尾。例如,浏览器最终会出现在带有 url 的页面上https://www.facebook.com/connect/login_success.html#access_token=ACCESS_TOKEN...
重定向 uri 可以是任何东西,但 facebook 为这种情况预留了特定的 uri,在这种情况下,您没有托管要接收和处理响应的另一台服务器。
基本上,facebook 会收集用户所需的所有信息,然后将它们发送到redirect_uri
. 他们可能需要的一些信息是让他们登录并接受您在 facebook 上的应用所需的权限。
因此,程序只关注嵌入式浏览器所在的 url,当它匹配时,redirect_uri
它会解析将包含数据作为片段的 url,然后可以关闭浏览器。