У меня есть приложение, которое сначала существовало как приложение для 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");
Однако, когда я запускаю его, доступ запрещен, так как я не отправляю запрос как «Реферер». Как я могу сделать это в моем коде Android?
Используйте loadUrl () с параметром additionalHttpHeaders. Доступно с Android 2.2.
additionalHttpHeaders
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);