最近我添加了两种语言来本地化应用程序,当时我将应用程序更改为新语言进行测试。我可以成功地看到所有的文本更改,其余的API很少不适用于新语言。我已经和后端团队进行了交叉检查。他们没有做任何更改,它正在使用旧语言
在这里你可以找到我的示例代码
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
manager.responseSerializer = [AFHTTPResponseSerializer serializer];
[manager.requestSerializer setValue:KEY forHTTPHeaderField:@"X-Api-Key"];
[manager.requestSerializer setValue:SECRET forHTTPHeaderField:@"X-Api-Secret"];
[manager.requestSerializer setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
[manager.requestSerializer setValue:@"nl" forHTTPHeaderField:@"X-Lang"];
[manager.requestSerializer setTimeoutInterval:TIMEOUT_TIME];
NSDictionary *parameters = @{@"email": email,
@"password": password,
@"useragent": @"mobile"};
[manager PUT:@"http://urlstring" parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) {
// handling response
}
能帮助任何人吗?我需要换什么吗
我做了两个修改,一个与请求头中的accept-language
有关,相对于任何本地化语言,我保留了默认语言en
。另一个是CCD_ 3。
manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript",@"text/html", nil];
[manager.requestSerializer setValue:@"en" forHTTPHeaderField:@"Accept-Language"];
现在它按预期工作,对于本地化语言,我们使用X-Lang
头。