2012-02-16 2 views

답변

3

당신은 확실히 childBrowser.showWebPage()에 매개 변수를 GET 전달할 수 있습니다.

앱에서 양식 제출을 가로 채고 전달 된 필드 이름과 값을 수집하여 (로그인 양식이라고 가정하고 사용자 이름과 암호라고 말하면) ChildBrowser에서 열린 URL에 매개 변수로 전달할 수 있습니다.

childBrowser.showWebPage('https://www.mydomain.com/login.php?username='+username+'&password='+password)

이것은 데모 용으로 다소 단순한 버전입니다. 그것을 더 좋게 만드는 데별로 도움이되지 않습니다.

캐치는 GET을 통해 전송되는 과정이다. 로그인 양식에 POST가 필요하고이를 변경할 수없는 경우 문제가 발생할 수 있습니다.

편집 :

POST가 유일한 옵션 인 경우

, 아마도 당신이 대신 아이의 브라우저를 사용하는 형태에 게시 AJAX를 사용하여 더 나을 것입니다.

+0

그건 내 문제입니다. 로그인 양식에 POST 만 필요합니다. – Andrei

+0

내 대답을 편집했습니다 ... – Devgeeks

3

나는 해결책을 찾고 있었다, 그리고 개발했다. iPhone 용 childbrowser의 상자에서 나오지 않습니다. 그래서 여기에 플러그인에 추가 한 코드가 있습니다. 가 참고로, 데이터 형식의 문자열이어야합니다 : ARG1 = 값 1 & ARG2 =이 & foo는 = 줄을 값 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! 밀턴.

+1

좋은 직장 ........ – Biranchi

관련 문제