标头(位置:..)在android上的webview中不完全工作


Header(location: ...) not completely working in webview on android

我在webview中的android应用程序中创建了一个在线商店,但有一个主要问题。。。

当我处理我的购物车时,我会转到一个php文件,将项目保存在一个会话变量中,然后使用以下内容返回到我刚刚打开的页面…

Header('Location:' . $_SERVER['HTTP_REFERER']);

这在安卓浏览器上非常有效,但不幸的是在webview中不起作用。。。有人知道如何修复或解决这个问题吗?

但有一点是,如果我指定一个位置,比如,它确实有效

Header('Location: shop.php'); 

因此,它的$_SERVER['HTTP_REFERER']似乎不起作用。。。有人能帮忙解决一下吗。。。

并非所有浏览器都会在请求中发送"referer"字符串,我怀疑webview就是其中之一。

你应该在提交的表单中包含上一页的url,然后你就可以使用它了。

这是两种适用于您的方法:

  1. 使用Javascript重定向:
    <script type="text/javascript">window.location.href = "url";</script>
  2. 使用HTML元标记:
    <meta http-equiv="refresh" content="0;url=http://webdesign.about.com/">

这两个示例也可以在第一个脚本输出之前调用。但请记住,并非所有客户都支持这一点。