我目前正在嘗試爲此任務找到解決方案。基本上,我有一個初始的UIView,要求用戶的用戶名和密碼爲特定的網站,這些信息然後會進入下一個有UIWebView裏面的視圖。我想知道是否可以在網站上自動填寫用戶名和密碼的詳細信息,並將用戶直接發送到網站上的帳戶頁面。我可以使用UITextFields的用戶名和密碼信息自動登錄UIWebView中的網站嗎?
謝謝。
我目前正在嘗試爲此任務找到解決方案。基本上,我有一個初始的UIView,要求用戶的用戶名和密碼爲特定的網站,這些信息然後會進入下一個有UIWebView裏面的視圖。我想知道是否可以在網站上自動填寫用戶名和密碼的詳細信息,並將用戶直接發送到網站上的帳戶頁面。我可以使用UITextFields的用戶名和密碼信息自動登錄UIWebView中的網站嗎?
謝謝。
假設你的網站已經div標籤。
此示例將用戶名注入Twitter註冊頁面。您可以通過在viewDidLoad中加載此測試:
NSString *urlString = @"https://mobile.twitter.com/signup";
NSURL *url = [NSURL URLWithString:urlString];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[webView loadRequest:request];
,然後在webViewDidFinishLoad注入用戶名:
- (void)webViewDidFinishLoad:(UIWebView *)webView;
{
[webView stringByEvaluatingJavaScriptFromString:@"var field = document.getElementById('oauth_signup_client_fullname');"
"field.value='yourUserName';"];
}
對不起,只是意識到你已經有了解決方案,但失蹤的實現。希望以上的幫助。
BTW添加一個動態變量到注入JavaScript中使用:
- (void)webViewDidFinishLoad:(UIWebView *)webView;
{
NSString *injectedVariable = @"userNameHere";
NSString *injectedString = [NSString stringWithFormat:@"var field = document.getElementById('oauth_signup_client_fullname'); field.value='%@';", injectedVariable];
[webView stringByEvaluatingJavaScriptFromString:injectedString];
}
解決方案是使用用戶名和密碼「僞造」登錄請求,並將其提供給Web視圖。 也就是說你有一個頁面index.php,它有一個用戶名和密碼字段。
如果你填寫它們,頁面login.php被調用這些參數。
你可以建立你可以使用stringByEvaluatingJavsScriptFromString注入的
NSString *urlString = @」http://www.yoursite.com/login.php?username=user&password=pass」;
NSURL *url = [NSURL URLWithString:urlString];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
[webView loadRequest:request];
}
應該做的伎倆
您好,感謝您的答覆。當我啓動應用程序時,我希望可以使用此解決方案,但似乎該網站不使用此登錄設計。當我將它加載到UIWebView中時,我有一種感覺,我不得不使用javascript將這兩條信息注入網站。我知道stringByEvaluatingJavaScriptFromString方法,但是在哪裏以及如何實現它。 – user989941
謝謝!我終於設法實現了javaScript,但無法添加動態變量。來到這裏找到答案。 – user989941