gpt4 book ai didi

ios - 获取 JSON 文本不是以数组或对象开头以及允许未设置片段的选项

转载 作者:行者123 更新时间:2023-11-29 00:26:21 25 4
gpt4 key购买 nike

有什么方法可以打印/NSLOG 在我的以下登录代码中 API 返回的字符串或数组:

-(void)loginToAPI:(NSString *)email password:(NSString *)password {

NSString *controller = @"login";
NSString *action = @"authenticate";

NSDictionary *params = @{@"username": email,
@"userpass": password,
@"controller": controller,
@"action": action,
@"app_id": APP_ID,
@"app_key": APP_KEY};
NSLog(@"params %@", params);

if ([self isNetworkAvailable]) {
AFHTTPRequestOperationManager *client = [AFHTTPRequestOperationManager manager];
client.responseSerializer.acceptableContentTypes = [client.responseSerializer.acceptableContentTypes setByAddingObject:@"text/html"];
[client POST:[[Config sharedInstance] getAPIURL]
parameters:params
success:^(AFHTTPRequestOperation *operation, id responseObject) {
NSDictionary *jsonObject= responseObject;
NSString *status = [jsonObject objectForKey:@"status"];
NSLog(@"Request Successful, response '%@'", jsonObject);
if ([status isEqualToString:@"success"]) {
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
NSDictionary *data = [jsonObject objectForKey:@"data"];
NSDictionary *userDict = [data objectForKey:@"user"];
NSDictionary *djsaDict = [data objectForKey:@"djsa"];

User *currentUser = [[User alloc] initWithProperties:userDict];

[currentUser save];

DJSA_Cutomer *djsa = [[DJSA_Cutomer alloc] initWithProperties:djsaDict];


NSData *userData = [NSKeyedArchiver archivedDataWithRootObject:currentUser];
NSData *djsaData = [NSKeyedArchiver archivedDataWithRootObject:djsa];

[userDefaults setObject:userData forKey:@"currentUser"];
[userDefaults setObject:djsaData forKey:@"djsa_customer"];
[userDefaults synchronize];

[[NSNotificationCenter defaultCenter] postNotificationName: @"LOGIN_SUCCESS" object:currentUser userInfo:nil];

} else {
[[NSNotificationCenter defaultCenter] postNotificationName: @"LOGIN_FAILED" object:nil userInfo:nil];
}
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Request Failed with Error - loginToAPI: %@, %@", error, error.userInfo);
[[NSNotificationCenter defaultCenter] postNotificationName: @"SERVER_ERROR" object:nil userInfo:nil];
}];
}
}

它总是失败并转到“请求因错误而失败 - loginToAPI”部分。是否可以查看服务器返回的实际值以便我诊断问题?

谢谢!

最佳答案

我遇到了同样的问题。就我而言,解决方案是

client.responseSerializer = [AFHTTPResponseSerializer serializer];

我这样做了,但我仍然遇到同样的错误。问题是我设置的是 client.requestSerializer 而不是 client.responseSerializer。小错误,但需要很多时间。

关于ios - 获取 JSON 文本不是以数组或对象开头以及允许未设置片段的选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42917013/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com