Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/114.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 登录api在第一次尝试时未命中服务器,导致其进入故障块_Ios_Objective C_Afnetworking - Fatal编程技术网

Ios 登录api在第一次尝试时未命中服务器,导致其进入故障块

Ios 登录api在第一次尝试时未命中服务器,导致其进入故障块,ios,objective-c,afnetworking,Ios,Objective C,Afnetworking,无论何时,只要在第一次尝试中单击登录按钮,它总是会进入故障块(互联网连接不是问题),在第二次尝试中,它工作得绝对正常……有人能告诉我们实际的问题是什么吗 AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; manager.responseSerializer = [AFJSONResponseSerializer serializer]; manager.requestSerializer = [AFJSONReques

无论何时,只要在第一次尝试中单击登录按钮,它总是会进入故障块(互联网连接不是问题),在第二次尝试中,它工作得绝对正常……有人能告诉我们实际的问题是什么吗

AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
manager.responseSerializer = [AFJSONResponseSerializer serializer];
manager.requestSerializer = [AFJSONRequestSerializer serializer];
[manager.requestSerializer setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
[manager POST:urlll parameters:json progress:nil success:^(NSURLSessionDataTask* task, id responseObject) {
    int tip=0;
    int bit=0;

    NSDictionary * myUserDictionary = responseObject;
    BOOL auth=[[myUserDictionary objectForKey:@"isAuth"]boolValue];     [GeneralHelper HideActivityIndicator:self.currentActivityloginView];
    if(auth == YES)
    {
        NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
        [prefs setObject:[myUserDictionary objectForKey:@"FullName"] forKey:@"FullName"];
        [prefs setObject:[myUserDictionary objectForKey:@"EmpID"] forKey:@"EmpID"];

        [prefs setObject:[myUserDictionary objectForKey:@"EmailID"] forKey:@"EmailID"];

        [prefs setObject:[myUserDictionary objectForKey:@"FirstName"] forKey:@"FirstName"];
        [prefs setObject:[myUserDictionary objectForKey:@"LastName"] forKey:@"LastName"];
        [prefs setObject:[myUserDictionary objectForKey:@"UserStatus"] forKey:@"UserStatus"];
        [prefs setObject:[myUserDictionary objectForKey:@"UserID"] forKey:@"UserID"] ;
        [prefs setObject:[myUserDictionary objectForKey:@"ManualRead"] forKey:@"ManualRead"] ;

        [self CanUserRescheduleCheck];


        //Clear notifications
        [[UIApplication sharedApplication] setApplicationIconBadgeNumber: 0];
        [[UIApplication sharedApplication] cancelAllLocalNotifications];

        /*REMOVE THE FOLLOWING LINE TO ENABLE PROMPT FOR MANUAL*/
        [prefs setObject:@"1" forKey:@"ManualRead"];
        /////////////

        bit = [[prefs objectForKey:@"ManualRead"]intValue];
        tip = [[myUserDictionary objectForKey:@"ManualRead"] intValue];
        if (bit==0)
        {
            UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"warning" message:@"Have You Read The Manual?" delegate:self cancelButtonTitle:@"YES" otherButtonTitles:@"NO", nil];
            [alert show];
        }
        if (bit==1)

        {


            _MasterVC= [[MasterViewController alloc]initWithNibName:@"MasterViewController" bundle:nil];

            [_loginView removeFromSuperview];
            //   self.refappdele.window.rootViewController=_MasterVC;

            //[TestFlight passCheckpoint:@"LoginSuccess"];
            [RefHelper SetMasterRef:_MasterVC];
            [RefHelper GetAppRef].window.rootViewController=_MasterVC;

        }

        AppDelegate* delegate = (AppDelegate*)[UIApplication sharedApplication].delegate;
        [delegate startLocationService];

        dispatch_async( dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
            [self registerDeviceToken];
        });


    }
    else
    {
        [DialogAlerter ErrorAlerter:[NSString stringWithFormat:@"The Login failed with following error: %@",[myUserDictionary objectForKey:@"AuthMessage"]]];
        NSLog(@"************* ERROR OCCURED HERE *******************");
        NSLog(@"isAuth: %i", auth);
    }

} failure:^(NSURLSessionDataTask *operation, NSError *error) {

    NSLog(@"Response: %@",error);

    [GeneralHelper HideActivityIndicator:self.currentActivityloginView];

    [DialogAlerter ErrorAlerter:@"A Request Error Occured: Please Try Again or Check your network connectivity"];

    //[TestFlight passCheckpoint:[error localizedDescription]];
}];

什么是错误响应消息?响应消息包含来自Web API的字符串格式的消息。我建议检查响应中的所有数据和元数据(状态代码、标题、内容等)。此外,如果第一次响应的内容类型是字符串,而您等待Json,则响应中出现了错误内容类型的问题。我认为如果可能的话,这不是问题。例如,它将永远不会成功,而第二次尝试中则不是这样。它工作正常。。。