2011-04-20 4 views
0

나는 새로운 것을 접했고, 조금 접근하여 혼란스러워했습니다. 웹 서버에 로그인 할 필요가 있습니다. 지금까지는 PHP 스크립트에 세부 사항을 보내는 정상적인 방법으로 그 일을 잘 수행했습니다.Iphone, JSON을 전송

저는 새로운 사람들과 일하기 시작했으며, 상황이 다르기 때문에 더 이상 PHP 스크립트와 이야기하지 않지만 JSON에 직접적으로 보이는 것 같습니다. 그 남자는 PHP 코드를 통해 로그인하는 방법을 보여주었습니다.

$loginParams = array(); 
    $loginParams[username] = "[email protected]"; 
    $loginParams[password] = "password"; 

    print "<li>CALLING login.json"; 

    $request = new RestRequest('http://'.$SERVER.'/api/login.json', 'POST', $loginParams); 
    $request->execute(); 

이제 Objective-C로 그걸 모방하고 싶습니다.

JSON 페이지로 JSON을 보내고 있습니까?

목표를 어떻게 다시 만들 수 있습니까?

많은 감사 -code

+1

명확한 설명을 위해 : JSON은 단지 데이터 형식 (http://www.json.org 참조) 일 뿐이며, 생각하고있는 경우 "PHP 스크립트의 대안"이 아닙니다. XML이라고 생각하면됩니다. 단지 응답 형식 일뿐입니다. –

답변

2

는이

ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url]; 
[request setPostValue:@"[email protected]" forKey:@"username"]; 
[request setPostValue:@"password" forKey:@"password"]; 
[request startSynchronous]; 

NSError *localError = [request error]; 
NSLog(@"Error:%@",[localError description]); 
if(!localError){ 
    NSString *response = [request responseString]; 
    NSLog(@"Response:%@",response); 

} 

ASIHTTPRequest 문서 같은 것을 사용할 수 있습니다.

0

흠. 서비스에 대한 구체적인 내용을 보지 않고서는 서비스에 사용자 이름과 암호를 게시하고 JSON을 반환하는 것처럼 보입니다.

이 같은 일부 코드를 시도하고 작동하는지 확인 : 그런 다음 응답을 처리해야합니다

NSString *postString = [NSString stringWithFormat:@"username=%@&password=%@", username, password]; 
NSData *postData = [postString dataUsingEncoding:NSUTF8StringEncoding]; 
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:YourURLObject]; 
[request setHTTPMethod:@"POST"]; 
[request setValue:[NSString stringWithFormat:@"%d", [postData length]] forHTTPHeaderField:@"Content-Length"]; 
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"]; 
[request setHTTPBody:postData]; 
NSError *error; 
NSHTTPURLResponse *response; 
[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error]; 

. 다시 말하지만, 이제는 RestRequest를 사용하고 있는지 확신 할 수 없으므로 이것은 내 생각에 단지 추측입니다.

관련 문제