Как отправить запрос URL как «Реферер» - PullRequest
2 голосов
/ 28 марта 2012

У меня есть приложение, которое сначала существовало как приложение для 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?

1 Ответ

4 голосов
/ 28 марта 2012

Используйте 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);
...