WebView:为什么GET参数作为嵌套网址没有被转义?

时间:2012-11-15 11:08:05

标签: android

我有2个应用程序:iOS& Android,

我有WebView,在WebView中我渲染Facebook身份验证对话框,所以,当我按下登录按钮 - 我看,Android WebView生成无效的网址:

机器人:

https://m.facebook.com/login.php?fbconnect=1&skip_api_login=1&m=m&next=https://m.facebook.com/dialog/permissions.request?_path=permissions.request&app_id=329216907114105&redirect_uri=http%3A%2F%2Fapi.quickblox.com%2Fauth%2Ffacebook%2Fcallback&display=touch&response_type=code&state=54b3e28cb55047afc2832cee42c16a748272b472.users.xml&perms=email&fbconnect=1&from_login=1&client_id=329216907114105&refsrc=http://m.facebook.com/login.php&app_id=329216907114105&cancel=http://api.quickblox.com/auth/facebook/callback?error_reason=user_denied&error=access_denied&error_description=The+user+denied+your+request.&state=54b3e28cb55047afc2832cee42c16a748272b472.users.xml&landing_serial=1&refid=9

的iOS:

https://m.facebook.com/login.php?fbconnect=1&skip_api_login=1&m=m&next=https%3A%2F%2Fm.facebook.com%2Fdialog%2Fpermissions.request%3F_path%3Dpermissions.request%26app_id%3D329216907114105%26redirect_uri%3Dhttp%253A%252F%252Fapi.quickblox.com%252Fauth%252Ffacebook%252Fcallback%26display%3Dtouch%26response_type%3Dcode%26state%3Dbcd9407a04d875d9eb2c4e8c84364de06b2249d1.auth.xml%26perms%3Demail%26fbconnect%3D1%26from_login%3D1%26client_id%3D329216907114105&refsrc=http%3A%2F%2Fm.facebook.com%2Flogin.php&app_id=329216907114105&cancel=http%3A%2F%2Fapi.quickblox.com%2Fauth%2Ffacebook%2Fcallback%3Ferror_reason%3Duser_denied%26error%3Daccess_denied%26error_description%3DThe%2Buser%2Bdenied%2Byour%2Brequest.%26state%3Dbcd9407a04d875d9eb2c4e8c84364de06b2249d1.auth.xml&landing_serial=1&refid=9

因此Android未将嵌套参数下一步转义为网址 - 我收到“错误。请稍后再试。”

所以,我必须做的,我希望Android生成正确的URL ...

UPD: 我在WebView回调onPageStarted

中获取此URL

0 个答案:

没有答案