在Play Framework中使用FBConnect模块获取URISyntaxException

时间:2011-02-02 22:32:09

标签: java fbconnect playframework

我正在尝试使用fbconnect模块为Play Framework启用Facebook注册。

在我的本地服务器上,我正在访问Facebook权限页面,但后来我遇到了这个例外:

Caused by: java.net.URISyntaxException: Illegal character in query at index 240: https://graph.facebook.com/oauth/access_token?client_id=18...13&redirect_uri=http://local.rank.my:9000/fbconnect/oauth/callback&client_secret=738fd...63590c5f&code=2.p2BLC_MSHV...496019|Hf_Dar_LB0zLVgwHrMkLFC3bA0g
    at java.net.URI$Parser.fail(URI.java:2809)
    at java.net.URI$Parser.checkChars(URI.java:2982)
    at java.net.URI$Parser.parseHierarchical(URI.java:3072)
    at java.net.URI$Parser.parse(URI.java:3014)
    at java.net.URI.<init>(URI.java:578)
    at java.net.URI.create(URI.java:840)

(为了安全起见,我用“......”替换了一些字符)。

URL中索引240处的字符是“|”。如果这实际上是URL的无效字符,为什么Facebook会返回它?如果没有,为什么Java拒绝它呢?

更新:显然这是在2010年11月报告为issue,并且作者声称它已被修复(fbconnect-0.3在此之后被释放了一段时间,这就是我正在使用的)。

1 个答案:

答案 0 :(得分:0)

正如您自己提到的,这是模块的编码问题。如果您仍然遇到这些问题,也许您想尝试this other module