Codeigniter - Facebook - JQuery移动问题


Codeigniter - Facebook - JQuery Mobile problem

我正在开发一个移动网络应用程序,该应用程序列出用户的朋友,以便在他们的墙上发布。我使用PHP SDK作为FB框架。当facebook重定向回原始URL时,它会添加一个查询字符串。浏览器地址栏中的返回URL是这样的:

http://mysyte.com/friends?state=11ccb40641675f22adc52aeff2562a0f&代码= AQBsK6AipjCoQ96i00mHz5gJe4MqgxQCbRwZQKqHWngO8X54eyb3o1qZS7Hz0O335SVUVSUHT05M4xtC5FbTclFolxD7Z2rUM5m7zAvIx-TJN-V8aP1L6WtRMsqMWIWclHJZqWqsP9leyAs0H6HxSVvhH50ut8IKv7wowmojNmyW0pQtmUVAsLi0-8WTo-Y_xCg # _

加载视图时,JQuery mobile会尝试调用:

" http://mysite.com/friends/_ "

从Codeigniter得到404因为下划线。因此,我有一个空白页。

我试图通过将REQUEST_URI更改为PATH_INFO来解决这个问题,在permitted_uri_chars中启用查询字符串和空字符串而没有任何运气。

另外,当我打印出$_SERVER['REQUEST_URI']时,我得到:

/朋友?状态= 11 ccb40641675f22adc52aeff2562a0f&代码= AQBsK6AipjCoQ96i00mHz5gJe4MqgxQCbRwZQKqHWngO8X54eyb3o1qZS7Hz0O335SVUVSUHT05M4xtC5FbTclFolxD7Z2rUM5m7zAvIx-TJN-V8aP1L6WtRMsqMWIWclHJZqWqsP9leyAs0H6HxSVvhH50ut8IKv7wowmojNmyW0pQtmUVAsLi0-8WTo-Y_xCg

(去掉浏览器地址栏中以#_结尾的字符)

如果我手动删除浏览器末尾的#_,它会再次正常加载。

任何想法?

谢谢。

我在JQM和url #散列中遇到了类似的问题。我可以使用锚标记的rel属性:

<a href="http://website.com" rel="external">Link Me</a>

您可能还想尝试data-ajax="false"
JQM changePage()方法的AND/OR:

$.mobile.changePage(url, { changeHash:false });

其中url为字符串形式的路径(相对或绝对)。

至于下划线,这对CodeIgniter来说是个大问题,因为任何以_开头的方法都是私有方法。

不可否认,我从未使用过FaceBook的PHP API。所以,你的问题可能超出了我的知识范围。

啊,是的,URL错误末尾那个臭名昭著的哈希符号。让我猜猜,你是用内置的webkit浏览器在Android模拟器上测试的吧。它将在实际设备上工作,也可以在另一个模拟器版本上尝试。

我怀疑对此知之甚少,但我在SO的几个问题中看到了这个小问题,我在自己的测试中也遇到了它。这里肯定有问题