为什么$ _SERVER [“HTTP_REFERER”]在Android Webview中不起作用?

时间:2016-05-02 11:53:58

标签: php android

我有一个显示webview的Android应用。 php funcion $_SERVER["HTTP_REFERER"]在Android应用程序中不起作用,但如果我使用股票浏览器(如chrome)访问同一网页则可以使用

有没有办法解决这个问题?

1 个答案:

答案 0 :(得分:0)

referer是一个可选的客户端(用户浏览器)标头。你不能继续那个标题。通常是在浏览器中单击同一协议中的链接时设置的。如果用户允许,可以设置浏览器,也可以不设置。所以永远不要在客户端头上中继。

<强>溶液: 如果你想确保用户来自你的页面或视图的特殊部分,只需在网址中附加一个参数并阅读它。比如http://xy/newpage.php?ref=oldpage_id

如果您想调用带有来自webview的标题的页面,您可以手动设置它们:

String url = "http://target.xy/";

Map<String, String> Headers = new HashMap<String, String>();
Hearders.put("Referer", "http://target.xy/referer");

WebView wv;
wv = (WebView) findViewById(R.id.webview);
wv.loadUrl(url, extraHeaders);