我有一个应用程序,它首先作为iPhone应用程序存在,现在作为Android应用程序。其中一个功能是通过传递字符串作为Referer来加载绕过安全登录的网页。 iPhone的代码如下 -
NSMutableURLRequest *request = [NSMutableURLRequest new];
[request setValue:@"http://myweb.com/" forHTTPHeaderField:@"referer"];
[request setURL:[NSURL URLWithString:@"http://www.theirweb.com/meetings/meetings.plx?CID=TEST2012&O=Generic&Key=4s6p2wz9"]];
[htmlDoc loadRequest:request];
我在Android应用中使用的代码是 -
WebView webview = new WebView(this);
setContentView(webview);
webview.loadUrl("http://www.theirweb.com/meetings/meetings.plx?CID=TEST2012&O=Generic&Key=4s6p2wz9");
然而,当我运行它时,访问被拒绝,因为我没有将请求作为'Referer'发送。我怎样才能在Android代码中执行此操作?
答案 0 :(得分:4)
将loadUrl()与additionalHttpHeaders
参数一起使用。从Android 2.2开始提供。
Map<String, String> extraHeaders = new HashMap<String, String>();
extraHeaders.put("Referer", "http://www.example.com");
WebView wv = (WebView) findViewById(R.id.webview);
wv.loadUrl("http://google.com", extraHeaders);