[英]Posting data on server in ios app (objective-c)
這是我用來在服務器上發布地址的方法。 但是,當單擊按鈕時,它將轉到stopActivityIndicatorInView。
但不發布數據,它僅顯示UIalertview。 如果我做錯了事,我需要一些幫助。
當我將參數更改為“ user_id”時,將轉到異常。
-(void)ServiceAddress
{
NSUserDefaults *user=[NSUserDefaults standardUserDefaults];
[Utils startActivityIndicatorInView:self.view withMessage:@"Please wait...."];
NSString *strurl = [NSString stringWithFormat:@"URL"];
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
manager.responseSerializer = [AFHTTPResponseSerializer serializer];
NSMutableDictionary *parameters = [[NSMutableDictionary alloc] init];
[parameters setObject:[[NSUserDefaults standardUserDefaults] objectForKey:@"userid"] forKey:@"userid"];
[parameters setObject:_txtcity.text forKey:@"city"];
[parameters setObject:_txthome.text forKey:@"house_no"];
[parameters setObject:_txtflat.text forKey:@"locality"];
[parameters setObject:_txtpincode.text forKey:@"pin_code"];
[parameters setObject:_txtCurrentLocation.text forKey:@"address"];
[parameters setObject:_txtmobile.text forKey:@"mobile"];
[manager POST:strurl parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) {
NSDictionary* data1 = [NSJSONSerialization JSONObjectWithData:responseObject options:NSJSONReadingMutableContainers error:nil];
NSLog(@"JSON: %@", data1);
if([[[data1 objectForKey:@"commandResult"] objectForKey:@"success"]integerValue]==1)
{
[Utils stopActivityIndicatorInView:self.view];
UIStoryboard *story=[UIStoryboard storyboardWithName:@"Main" bundle:nil];
MyAddressVC *view=[story instantiateViewControllerWithIdentifier:@"MyAddressVC"];
[self.navigationController pushViewController:view animated:NO];
}
else
{
[Utils stopActivityIndicatorInView:self.view];
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@""
message:@"go back"
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
}
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Error: %@", [error localizedDescription]);
[Utils stopActivityIndicatorInView:self.view];
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"" message:[error localizedDescription]
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
}];
}
這些是我從服務器獲得的參數。
$userId = isset($_REQUEST['user_id']) ? $_REQUEST['user_id'] : '';
$mobile = isset($_REQUEST['mobile']) ? $_REQUEST['mobile'] : '';
$houseNo = isset($_REQUEST['house_no']) ? $_REQUEST['house_no'] : '';
$street = isset($_REQUEST['street']) ? $_REQUEST['street'] : '';
$locality = isset($_REQUEST['locality']) ? $_REQUEST['locality'] : '';
$city = isset($_REQUEST['city']) ? $_REQUEST['city'] : '';
$state = isset($_REQUEST['state']) ? $_REQUEST['state'] : '';
$pinCode = isset($_REQUEST['pin_code']) ? $_REQUEST['pin_code'] : '';
$latitude = isset($_REQUEST['latitude']) ? $_REQUEST['latitude'] : '';
$longitude = isset($_REQUEST['longitude']) ? $_REQUEST['longitude'] : '';
如果顯示的是警報視圖,則表示請求未成功,請仔細檢查您的參數,例如用戶ID,您錯過了下划線,因此應如下所示:“ user_id”而不是“ userid”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.