Javascript работает на iPhone, но не на iPad - PullRequest
0 голосов
/ 27 декабря 2011

Я использую этот JavaScript в UIWebvView, чтобы получить URL видео YouTube.

getURL = [self.webView stringByEvaluatingJavaScriptFromString:@"function getURL() {
    var player = document.getElementById('player'); 
    var video = player.getElementsByTagName('video')[0]; 
    return video.getAttribute('src');
    } 
    getURL();"
];

На iPhone работает нормально, но на ipad не работает и возвращает @ "". Оба устройства загружают сайт m.youtube.com. Кто-нибудь может мне помочь?

1 Ответ

0 голосов
/ 27 декабря 2011

iPad и iPhone имеют различную информацию заголовка HTTP, в частности строку пользовательского агента.Возможно, что YouTube отправляет различный javascript в зависимости от того, какое устройство имеет пользователь.

Вы можете попробовать переопределить заголовок HTTP "пользовательский агент" в вашем запросе.Я думаю, что этот ответ переполнения стека может работать для этого: Изменить пользовательский агент на UIWebView

Если нет, вы можете попробовать использовать набор сторонних классов, таких как AISHTTPRequest, чтобы подделать информацию пользовательского агента дляПолучите доступ к URL-адресу YouTube с iPad, заставляя YouTube думать, что это iPhone.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...