kanyun-inc/YTKNetwork
kanyun-inc/YTKNetwork has 6,526 GitHub stars and 1,626 forks. GitHot measured +1 stars in 24 hours and -2 in 7 days. Last checked 2026-11-11 03:28 UTC. Last push 2021-04-22.
YTKNetwork is a high level request util based on AFNetworking.
What you can do
- Response can be cached by expiration time
- Response can be cached by version number
- Set common base URL and CDN URL
- Validate JSON response
Measured star growth
- in 24h
- +1
- in 7 days
- -2
- in 15 days
- Update delayed
- in 1 month
- Update delayed
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalYTKNetwork
What
YTKNetwork is a high level request util based on AFNetworking. It's developed by the iOS Team of YuanTiKu. It provides a High Level API for network request.
YTKNetwork is used in all products of YuanTiKu, including: YuanTiKu, YuanSoTi, YuanFuDao, FenBiZhiBoKe.
Features
- Response can be cached by expiration time
- Response can be cached by version number
- Set common base URL and CDN URL
- Validate JSON response
- Resume download
blockanddelegatecallback- Batch requests (see
YTKBatchRequest) - Chain requests (see
YTKChainRequest) - URL filter, replace part of URL, or append common parameter
- Plugin mechanism, handle request start and finish. A plugin for show "Loading" HUD is provided
Who
YTKNetowrk is suitable for a slightly more complex project, not for a simple personal project.
YTKNetwork is helpful if you want to cache requests, manage the dependences of requests, or validate the JSON response. And if you want to cache requests based on request version, this is one of the greatest advantages of YTKNetwork.
Why
YTKNetwork provides YTKRequest to handle every network request. You should inherit it and override some methods to define custom requests in your project.
The main idea is use the Command Pattern. The benefits are:
- Your code is decoupled to detail network request framework, it's easy to replace it. Actually, YTKNetwork is originally based on ASIHttpRequest, we just spent two days to switch to AFNetworking.
- Handle common logic in base class.
- Easier Persistence
But YTKNetwork is not suitable if your project is very simple. You can use AFNetworking directly in controller.
Installation
To use YTKNetwork add the following to your Podfile
pod 'YTKNetwork'
Or add this in your Cartfile:
github "yuantiku/YTKNetwork" ~> 3.0
Requirements
| YTKNetwork Version | AFNetworking Version | Minimum iOS Target | Note |
|---|---|---|---|
| 3.x | 4.x | iOS 9 | Xcode 11+ is required. |
| 2.x | 3.x | iOS 7 | Xcode 7+ is required. |
| 1.x | 2.x | iOS 6 | n/a |
YTKNetwork is based on AFNetworking. You can find more detail about version compatibility at AFNetworking README.
Guide & Demo
Contributors
Acknowledgements
Thanks for their great work.
License
YTKNetwork is available under the MIT license. See the LICENSE file for more info.
Explore related projects
codecrafters-io/build-your-own-x
Master programming by recreating your favorite technologies from scratch.
561,822 starspublic-apis/public-apis
A collective list of free APIs
498,187 starsmorluto/rea
Reverse engineer anything with agents, from app behavior down to native binaries.
452,335 starsopenclaw/openclaw
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
394,355 stars