2016-04-08 2 views
0

У меня есть приложение на базе iOS на основе coredova и попытка загрузить URL-адрес на UIWebView. Например:Проблема с загрузкой URL-адреса с сообщением в UIWebview

http://www.something.com

Этот URL нагрузки без какого-либо вопроса, но проблема, когда я нажимаю на кнопку отправки на загруженной странице после ввода электронной почты в текстовом поле. Это запрос POST, но запрос никогда не доходит до сервера.

On submit, Call back приходит ниже метода делегата с навигационным типом как UIWebViewNavigationTypeFormSubmitted, а request HTTPBody содержит введенное пользователем электронное письмо. Этот метод делегата возвращает YES.

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType

После этого, я получаю ниже успех обратного вызова, но экран по-прежнему остается в самом старом экране.

- (void)webViewDidFinishLoad:(UIWebView *)webView 

Пожалуйста, помогите мне найти причину этой проблемы.

Также обратите внимание, что тот же URL-адрес отлично работает при загрузке в любом браузере.

+0

вы возвращаетесь ДА от метода делегата shouldStartLoadWithRequest? – heximal

+0

Да. Я возвращаюсь ДА. – Subhash

+0

это классическая форма http или, возможно, существует какая-то логика javascript для отправки? – heximal

ответ

0

С iOS 9 все запросы с HTTP запрещены и HTTPS следует использовать.

Существует обходное решение, хотя для этого вам действительно нужно использовать HTTP.

Добавьте это в .plist:

<key>NSAppTransportSecurity</key> 
<dict> 
    <key>NSAllowsArbitraryLoads</key> 
    <true/> 
</dict> 

Image example

+0

Автор сказал, что первая страница загружается хорошо, так что это не проблема транспортной безопасности – heximal

Смежные вопросы