{"id":21802886,"url":"https://github.com/coderzhuxh/xhnetworkcache","last_synced_at":"2025-05-09T00:09:49.195Z","repository":{"id":56928031,"uuid":"61925510","full_name":"CoderZhuXH/XHNetworkCache","owner":"CoderZhuXH","description":"一行代码将网络数据持久化 - 支持数据同步/异步写入及更新、缓存数据读取、获取缓存数据大小、缓存数据清除.","archived":false,"fork":false,"pushed_at":"2020-01-10T07:32:47.000Z","size":327,"stargazers_count":182,"open_issues_count":2,"forks_count":60,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-09T00:09:40.672Z","etag":null,"topics":["objective-c","pod"],"latest_commit_sha":null,"homepage":"","language":"Objective-C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CoderZhuXH.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-06-25T03:39:59.000Z","updated_at":"2024-07-31T07:35:50.000Z","dependencies_parsed_at":"2022-08-21T05:50:45.849Z","dependency_job_id":null,"html_url":"https://github.com/CoderZhuXH/XHNetworkCache","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CoderZhuXH%2FXHNetworkCache","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CoderZhuXH%2FXHNetworkCache/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CoderZhuXH%2FXHNetworkCache/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CoderZhuXH%2FXHNetworkCache/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CoderZhuXH","download_url":"https://codeload.github.com/CoderZhuXH/XHNetworkCache/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253166521,"owners_count":21864482,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["objective-c","pod"],"created_at":"2024-11-27T11:34:05.264Z","updated_at":"2025-05-09T00:09:49.173Z","avatar_url":"https://github.com/CoderZhuXH.png","language":"Objective-C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# XHNetworkCache\n#### 一行代码持久化网络数据\u003cbr\u003e\n\n[![AppVeyor](https://img.shields.io/appveyor/ci/gruntjs/grunt.svg?maxAge=2592000)](https://github.com/CoderZhuXH/XHNetworkCache)\n[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/CoderZhuXH/XHNetworkCache)\n[![Version Status](https://img.shields.io/cocoapods/v/XHNetworkCache.svg?style=flat)](http://cocoadocs.org/docsets/XHNetworkCache)\n[![Support](https://img.shields.io/badge/support-iOS%207%2B-brightgreen.svg)](https://github.com/CoderZhuXH/XHNetworkCache)\n[![Pod Platform](https://img.shields.io/cocoapods/p/XHNetworkCache.svg?style=flat)](http://cocoadocs.org/docsets/XHNetworkCache)\n[![Pod License](https://img.shields.io/cocoapods/l/XHNetworkCache.svg?style=flat)](https://github.com/CoderZhuXH/XHNetworkCache/blob/master/LICENSE)\n\n==============\n\n#### Swift版本请戳这里\u003e\u003e\u003e https://github.com/CoderZhuXH/XHNetworkCacheSwift\n\n### 技术交流群(群号:537476189)\n\n\n### 更新记录:\n\n*   2020.01.10 -- v1.5.0 --\u003e增加检测该数据是否已缓存接口...\n*   2017.09.30 -- v1.4.0 --\u003e已知问题修复及优化...\n*\t2017.06.16 -- v1.3.0 --\u003e缓存及获取缓存接口增加请求参数(可选)...\n*\t2016.09.04 -- v1.2.3 --\u003e增加+(NSString *)cacheSizeFormat方法...\n*\t2016.08.12 -- v1.2.1 --\u003e增加获取缓存路径接口...\u003cbr\u003e\n*\t2016.07.06 -- v1.2   --\u003e增加异步写入/更新缓存接口...\u003cbr\u003e\n*\t2016.07.01 -- v1.1   --\u003e1.增加手动清除缓存接口;2.增加获取缓存大小接口...\u003cbr\u003e\n*\t2016.06.24 -- v1.0\n\n## 使用方法:\n### 1.(同步)写入/更新\n```objc\n//将数据(同步)写入磁盘缓存(参数1:服务器返回的JSON数据, 参数2:数据请求URL,参数3:数据请求参数(没有传nil)\n//[按APP版本号缓存,不同版本APP,同一接口缓存数据互不干扰]\n    BOOL result = [XHNetworkCache saveJsonResponseToCacheFile:self.responseObject andURL:self.URL params:self.params];\n    if(result)\n    {\n        NSLog(@\"(同步)写入/更新缓存数据 成功\");\n    }\n    else\n    {\n         NSLog(@\"(同步)写入/更新缓存数据 失败\");\n    }\n\n```\n### 2.(异步)写入/更新\n```objc\n//将数据(异步)写入磁盘缓存(参数1:服务器返回的JSON数据, 参数2:数据请求URL,参数3:数据请求参数(没有传nil)\n//[按APP版本号缓存,不同版本APP,同一接口缓存数据互不干扰]\n    [XHNetworkCache save_asyncJsonResponseToCacheFile:self.responseObject andURL:self.URL params:self.params completed:^(BOOL result) {\n        \n        if(result)\n        {\n            NSLog(@\"(异步)写入/更新缓存数据 成功\");\n        }\n        else\n        {\n            NSLog(@\"(异步)写入/更新缓存数据 失败\");\n        }\n        \n    }];\n\n```\n\n### 3.该数据是否已缓存\n```objc\n//获取缓存数据(参数1:请求URL,参数2:请求参数,返回:YES已缓存,NO未缓存)\n BOOL result = [XHNetworkCache checkCacheWithURL:self.URL params:self.params];\n\n```\n\n### 4.获取缓存数据\n```objc\n//获取缓存数据(参数1:请求URL,参数2:请求参数,返回:JSON数据)\nid JsonCache = [XHNetworkCache cacheJsonWithURL:self.URL params:self.params];\n\n```\n### 5.获取缓存路径\n```objc\n//获取缓存路径\n NSString *path = [XHNetworkCache cachePath];\n\n```\n### 6.清除缓存\n```objc\n//清除缓存\n[XHNetworkCache clearCache];\n\n```\n\n### 7.获取缓存总大小(M)\n```objc\n//获取缓存大小(M)\nfloat cacheSize = [XHNetworkCache cacheSize];\n//或者(以..kb/..M)形式获取\nNSString *cacheSizeFormat = [XHNetworkCache cacheSizeFormat];\n```\n##  安装\n### 1.手动添加:\u003cbr\u003e\n*   1.将 XHNetworkCache 文件夹添加到工程目录中\u003cbr\u003e\n*   2.导入 XHNetworkCache.h\n\n### 2.CocoaPods:\u003cbr\u003e\n*   1.在 Podfile 中添加 pod 'XHNetworkCache'\u003cbr\u003e\n*   2.执行 pod install 或 pod update\u003cbr\u003e\n*   3.导入 XHNetworkCache.h\n\n### 3.Tips\n*   1.如果发现pod search XHLaunchAd 搜索出来的不是最新版本，需要在终端执行pod repo update命令更新本地spec缓存（需要几分钟），然后再搜索就可以了\n*   2.如果你发现你执行pod install后,导入的不是最新版本,请删除Podfile.lock文件,在执行一次 pod install\n\n##  系统要求\n*   该项目最低支持 iOS 7.0 和 Xcode 7.0\n\n##  许可证\n    XHNetworkCache 使用 MIT 许可证，详情见 LICENSE 文件","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcoderzhuxh%2Fxhnetworkcache","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcoderzhuxh%2Fxhnetworkcache","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcoderzhuxh%2Fxhnetworkcache/lists"}