我正在使用PhoneGap構建iPhone應用程序。我正在使用ChildBrowser插件。PhoneGap/ChildBrowser - 向ChildBrowser發送應用程序窗體
如果我在App中有一個帶有用戶名/密碼的表單,是否可以將這些信息發佈到像www.mydomain.com/login.php這樣的URL並在ChildBrowser中打開?
請讓我知道。
謝謝。
我正在使用PhoneGap構建iPhone應用程序。我正在使用ChildBrowser插件。PhoneGap/ChildBrowser - 向ChildBrowser發送應用程序窗體
如果我在App中有一個帶有用戶名/密碼的表單,是否可以將這些信息發佈到像www.mydomain.com/login.php這樣的URL並在ChildBrowser中打開?
請讓我知道。
謝謝。
您當然可以將GET參數傳遞給childBrowser.showWebPage()
。
您可以在應用程序中攔截您的表單提交,並收集傳遞的字段名稱和值(假設這是一個登錄表單,所以說用戶名和密碼),並將它們作爲參數傳遞給在ChildBrowser中打開的URL。
childBrowser.showWebPage('https://www.mydomain.com/login.php?username='+username+'&password='+password)
這是用於演示目的相當單純的版本。改善它並不需要太多。
捕獲當然是通過GET發送。如果您的登錄表單期待POST並且無法更改,則可能會出現問題。
編輯:
如果POST是你唯一的選擇,也許你會使用AJAX張貼到形式,而不是使用兒童瀏覽器會更好。
我正在尋找解決方案,並最終開發它。這不會在iPhone的兒童瀏覽器中出現。 所以,這裏是我添加到插件的代碼。 FYI,數據應與格式的字符串:ARG1 =值1 & ARG2 =值2 &富=酒吧
ChildbrowserViewController 我已經添加了以下的方法有:
- (void)postURL:(NSString*)url data:(NSString*)data{
NSMutableURLRequest *request = [[NSMutableURLRequest alloc]initWithURL: [NSURL URLWithString:url]];
[request setHTTPMethod: @"POST"];
[request setHTTPBody: [data dataUsingEncoding: NSUTF8StringEncoding]];
[webView loadRequest: request];
webView.hidden = NO;}
ChildbrowserCommand我在showWebPage方法中添加了以下代碼:
NSString* method = [ options objectForKey:@"method"];
if ([method isEqualToString:@"POST"]){
[childBrowser postURL:url data:[options objectForKey:@"data"]];
}else{
[childBrowser loadURL:url];
}
HTH! Milton。
做得好........ – Biranchi 2013-05-09 04:48:33
這是我的問題。登錄表單僅需要POST。 – Andrei 2012-02-20 08:08:41
我編輯了我的答案... – Devgeeks 2012-02-20 08:50:48