首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >facebook登录流程

facebook登录流程
EN

Stack Overflow用户
提问于 2013-09-22 10:34:41
回答 1查看 285关注 0票数 0

在我的索引页面中,我有这个链接,让我使用facebook。

代码语言:javascript
复制
<a href="https://www.facebook.com/dialog/oauth?client_id=xxx&redirect_uri=http://xxx.herokuapp.com/test">Test</a>

在我的TestServlet中,它将为我查询图形api提供访问令牌。我将查询和存储信息到一个200的结果列表。结果转发到我的jsp页面(test.jsp)。

在我的test.jsp中:

URL将显示http://xxx.herokuapp.com/test?code=xxx

由于我不希望同时显示所有200个结果,所以一次只加载20个结果。我有一个指向下一页<a href='/test?page=${page+1}&code=${code}'>Next Page</a>的链接,其中页面是当前的页面编号1,代码是url上的代码。

然而,当我点击“下一页”链接时,我会碰到这个错误:

代码语言:javascript
复制
java.io.IOException: Server returned HTTP response code: 400 for URL: https://graph.facebook.com/oauth/access_token?client_id=xxx&redirect_uri=http://xxx.herokuapp.com/test&client_secret=xxx&code=xxx

问题是否在于编码问题?如果是这样的话,我应该如何在url中对代码进行编码,以及应该在哪里编码呢?在我的jsp页面或servlet中?谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-22 13:18:02

看起来,您正在尝试再次使用“下一页”链接中的相同“代码”获取access_token。Facebook正在返回400个错误请求。facebook返回的“代码”应该只使用一次就可以得到access_token。一旦您有了访问令牌,就可以使用它来进行所有的Graph调用。

如果使用会话,则可以将access_token存储在会话中,并将其用于图形API调用。否则,您可以在下一个页面链接中传递access_token (而不是代码):

代码语言:javascript
复制
<a href='/test?page=${page+1}&access_token=${access_token}'>Next Page</a>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18942881

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档