NSURL *url = [NSURL URLWithString:@"http://test.com/misc/app/ws/ws_user_registration.php?"];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setRequestMethod:@"POST"];
[request setDelegate:self];
[request appendPostData:[[NSString stringWithFormat:@"{\"user_name\":\"%@\",\"user_tag_status\":\"%@\",\"description\":\"%@\",\"mobile_number\":\"%@\",\"device_type\":\"%@\",\"device_id\":\"%@\",\"device_token\":\"%@\",\"os\":\"%@\",\"os_version\":\"%@\",\"image_data\":\"%@\",\"user_id\":\"%@\"}",self.phnNumTxtFld.text,@"live",@"description",self.phnNumTxtFld.text,@"iPhone",appDelegate.deviceID,appDelegate.deviceToken,@"iOS",[UIDevice currentDevice].systemVersion,[data base64EncodedString],@""] dataUsingEncoding:NSUTF8StringEncoding]];
[request setDidFinishSelector:@selector(getTreeRequestFinished:)];
[request setDidFailSelector:@selector(getTreeRequestFailed:)];
[request startAsynchronous];
appendPostData: passing NSData but server not getting this data.
To post data use
ASIFormDataRequest
For more info read asihttp docs