#iphone #url #uiwebview
#iPhone #url #uiwebview
Вопрос:
У меня есть UIWebView, в котором относительные ссылки не загружаются должным образом, потому что представление было загружено из объекта данных после локальной обработки HTML-данных, а не напрямую из URL. Теперь все относительные ссылки на странице завершаются ошибкой, потому что UIWebView не знает, к чему они относятся.
Например:
<IMG SRC="img/foo.jpg">
не будет загружаться, потому что вместо того, чтобы искать
http://theoriginalsite.com/img/foo.jpg
для файла UIWebView просматривает
iphonefilesystem/thisapp/tempdir/img/foo.jpg
Есть ли способ сбросить базовый URL-адрес UIWebView, чтобы эти ссылки работали? Я застрял с добавлением еще одного прохода к обработке данных html, чтобы переписать все относительные URL-адреса внутри?
Ответ №1:
Именно для этого и предназначен параметр baseUrl в следующих методах UIWebView:
- (void)loadData:(NSData *)data MIMEType:(NSString *)MIMEType textEncodingName:(NSString *)encodingName baseURL:(NSURL *)baseURL
- (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL
Взгляните на документацию здесь.