相关疑难解决方法(0)

AFNetworking - 不缓存响应

我正在使用此代码从服务器中提取一个简单的JSON提要:

AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
    manager.responseSerializer = [AFJSONResponseSerializer serializer];

[manager GET:kDataUrl parameters:nil
 success:^(AFHTTPRequestOperation *operation, id responseObject) {
     NSLog(@"response: %@", responseObject);
 }
 failure:^(AFHTTPRequestOperation *operation, NSError *error) {
     NSLog(@"JSON DataError: %@", error);
 }];
Run Code Online (Sandbox Code Playgroud)

有用.但是,在我更改kDataUrl上的JSON文件并验证是否在浏览器中进行了更改后,当我再次运行应用程序时,我仍然得到之前的响应.

似乎AFNetworking以某种方式缓存了旧的响应.我不想要这种行为.我想下载当前的Feed.是否需要设置一些设置或参数来关闭缓存?

json caching ios afnetworking afnetworking-2

17
推荐指数
2
解决办法
2万
查看次数

将转义的UTF8字符转换回原始格式

我正在尝试从一个来自plist的数组中读取字符串并打印这些字符串.

数组中的字符串包含转义的UTF8字符 - 例如,"Nu\u0161a Florjan\u010di\u010d"当从plist中读取时,"NušaFlorjančič"变为.无法更改plist的内容,但我的程序需要正确显示名称.

奇怪的是,当我对字符串进行硬编码时,Objective-C似乎会自动执行此操作.但是,如果我从plist中获取字符串,则根本没有任何事情发生.

举个例子,这里有一些代码:

NSString *name1 = @"Nu\u0161a Florjan\u010di\u010d";
NSString *name2 = [list objectAtIndex:0];       
NSLog(@"name 1: %@", name1);
NSLog(@"name 2: %@", name2);
Run Code Online (Sandbox Code Playgroud)

[list objectAtIndex:0]包含@"Nu\u0161a Florjan\u010di\u010d"- 唯一的区别是它是通过plist编辑器设置的.

控制台输出是:

2011-10-22 18:00:02.595 Test[13410:11c03] name 1: Nuša Florjan?i?
2011-10-22 18:00:02.595 Test[13410:11c03] name 2: Nu\u0161a Florjan\u010di\u010d
Run Code Online (Sandbox Code Playgroud)

我已经尝试过各种各样的事情,包括将字符串转换为C字符串,然后NSString使用UTF-8编码创建一个对象,但根本没有任何工作.

我真的很感激你的任何指示,这可能有助于我解决这个看似平凡的问题.

string cocoa-touch objective-c nsstring ios

15
推荐指数
1
解决办法
1万
查看次数