2012-11-11 124 views
0

我試圖使登錄表單使用http請求來檢查用戶名從外部服務器&密碼但響應給出<>發送HTTP請求返回<>

- (IBAction)getlogin:(UIButton *)sender { 
    NSString *rawStrusername = [NSString stringWithFormat:@"username=%@",_username.text]; 
    NSString *rawStrpassword = [NSString stringWithFormat:@"password=%@",_password.text]; 

    NSString *post = @"rawStrusername&rawStrpassword"; 
    NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES]; 
    /* 
    NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]];*/ 
    NSURL *url = [NSURL URLWithString:@"http://www.othaimmarkets.com/my_services_path/user/login"]; 
    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; 

    [request setHTTPMethod:@"POST"]; 
    /*[request setValue:postLength forHTTPHeaderField:@"Content-Length"];*/ 
    [request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"]; 
    [request setHTTPBody:postData]; 



    NSURLResponse *response; 
    NSError *err; 
    NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&err]; 
    NSLog(@"responseData: %@", responseData); 
} 

任何幫助,建議或實施例,將不勝感激

+0

如果服務器返回正確的請求不正確的答覆,這可能是一個服務器問題。 –

+0

我通過firefox {海報}插件測試了服務器,並返回了我的結果 URL:http://www.othaimmarkets.com/my_services_path/user/login(OR http://www.othaimmarkets.com/my_services_path/user/ login.json) 內容類型:應用程序/ x-WWW窗體-urlencoded 名稱:用戶名 值:[email protected] 名:密碼 值:29378960 操作:POST –

+0

然後檢查結果你發送來幫助你調試。 –

回答

1
NSString *post = @"rawStrusername&rawStrpassword"; 

您發送的 「rawStrusername&rawStrpassword」 字符串到服務器?你爲什麼不嘗試:

NSString *post = [NSString stringWithFormat:@"%@&%@", rawStrusername, rawStrpassword]; 
+0

我trid它它給了我responseData:<6e756c6c> –

+0

這是二進制數據。將其轉換爲字符串以查看真實的響應。 'NSLog(@「responseData:%@」,[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]);' – graver

+1

驚人的+++男人可能感謝現在工作得很好:) –