Post-Request nun asynchron
This commit is contained in:
parent
f272285193
commit
72f7eccea3
Binary file not shown.
@ -13,6 +13,7 @@
|
||||
NSTimer *updateTimer;
|
||||
NSString *usersIPv4;
|
||||
BOOL isNetworkAvailable;
|
||||
BOOL isRequestRunning;
|
||||
}
|
||||
|
||||
-(BOOL)updateDomain;
|
||||
|
||||
@ -19,13 +19,24 @@
|
||||
userInfo: nil
|
||||
repeats: YES];
|
||||
|
||||
isRequestRunning = NO;
|
||||
|
||||
isNetworkAvailable = NO;
|
||||
[self checkNetworkAvailability];
|
||||
}
|
||||
|
||||
- (void)tick:(NSTimer *)theTimer {
|
||||
if(isNetworkAvailable) {
|
||||
if(isNetworkAvailable && !isRequestRunning) {
|
||||
[self updateDomain];
|
||||
} else {
|
||||
// else for logging only
|
||||
|
||||
if(!isNetworkAvailable) {
|
||||
NSLog(@"no ip update, 'cause network unavailable");
|
||||
}
|
||||
if(isRequestRunning) {
|
||||
NSLog(@"no ip update, 'cause of active request");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -82,16 +93,14 @@
|
||||
} else {
|
||||
NSLog(@"compare stored %@ with %@", storedIPv4, fetchedIPv4);
|
||||
BOOL changed = [storedIPv4 isEqualToString:fetchedIPv4];
|
||||
|
||||
if(changed) {
|
||||
[[NSUserDefaults standardUserDefaults] setObject:fetchedIPv4 forKey:@"value.ip.ipv4"];
|
||||
}
|
||||
|
||||
return changed;
|
||||
}
|
||||
}
|
||||
|
||||
-(BOOL)doWebServiceUpdate {
|
||||
NSLog(@"update ip to %@", usersIPv4);
|
||||
isRequestRunning = YES;
|
||||
|
||||
NSString *settingTempName = [[NSUserDefaults standardUserDefaults] stringForKey:@"setting.name"];
|
||||
NSString *settingTempToken = [[NSUserDefaults standardUserDefaults] stringForKey:@"setting.token"];
|
||||
|
||||
@ -108,25 +117,21 @@
|
||||
NSData *postData = [NSJSONSerialization dataWithJSONObject:tmp options:0 error:&error];
|
||||
[request setHTTPBody:postData];
|
||||
|
||||
NSLog(@"update ip to %@", usersIPv4);
|
||||
//NSURLConnection *connection = [NSURLConnection connectionWithRequest:request delegate:self];
|
||||
NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
|
||||
/*NSData *resultData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
|
||||
NSString *strData = [[NSString alloc]initWithData:resultData encoding:NSUTF8StringEncoding];
|
||||
NSLog(@"resultData: %@", strData);*/
|
||||
|
||||
[NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *resultData, NSError *error) {
|
||||
NSString *strData = [[NSString alloc]initWithData:resultData encoding:NSUTF8StringEncoding];
|
||||
NSLog(@"resultData: %@", strData);
|
||||
|
||||
// locally save posted ip
|
||||
[[NSUserDefaults standardUserDefaults] setObject:usersIPv4 forKey:@"value.ip.ipv4"];
|
||||
|
||||
isRequestRunning = NO;
|
||||
}];
|
||||
|
||||
NSString *strData = [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];
|
||||
NSLog(@"data: %@", strData);
|
||||
return YES;
|
||||
|
||||
/*NSString *post = [NSString stringWithFormat:@"name=%@&token=%@", settingTempName, settingTempToken];
|
||||
NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
|
||||
|
||||
NSString *postLength = [NSString stringWithFormat:@"%lu", (unsigned long)[postData length]];
|
||||
|
||||
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
|
||||
[request setURL:[NSURL URLWithString:WS_RESOURCE]];
|
||||
[request setHTTPMethod:@"POST"];
|
||||
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
|
||||
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
|
||||
[request setHTTPBody:postData];*/
|
||||
}
|
||||
|
||||
-(NSString *)fetchIPv4 {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user