How robertsklv/unityfetch works
UnityFetch is a UnityWebRequest wrapper for making HTTP requests, handling responses, and optionally organizing endpoints as service clients. The main workflow is a caller invoking the async or coroutine client API; the client configures and dispatches a request, selects payload and response handling, then returns a typed response. ServiceClient adds attribute-driven route and parameter mapping. The README also documents an editor request inspector; its runtime recording connection is not visible in the sampled excerpts, so that link is shown as unverified.
Main entry points: UnityFetchClient.cs HTTP Client · UnityFetchRequestOptions.cs Request Options · ServiceClient.cs Service Client · NetworkSO.cs Captured Requests
Components 22
Request APIs
- Convenience API
Runtime/UF.cs - HTTP Client
Runtime/UnityFetchClient.cs - Coroutine Client
Runtime/CoroutineRestClient.cs - Coroutine Wrapper
Runtime/UnityFetchCoroutineRequestWrapper.cs
Request Dispatch
- Request Options
Runtime/UnityFetchRequestOptions.cs - Request Context
Runtime/RequestContext.cs - Abort Control
Runtime/AbortController.cs
Payload And Responses
- Payload Strategies
Runtime/RequestStrategies/RequestStrategyFactory.cs - Response Processors
Runtime/RequestProcessing/RequestProcessorFactory.cs - JSON Serializer
Runtime/IJsonSerializer.cs - Typed Response
Runtime/UnityFetchResponse.cs - Response Callbacks
Runtime/UnityFetchResponseHandler.cs
Service Abstraction
- Service Client
Runtime/ServiceClient.cs - Action Attributes
Runtime/Attributes/ActionAttribute.cs - HTTP Methods
Runtime/RequestMethod.cs
Editor Inspector
- Network Inspector
Editor/NetworkInspectorWindow.cs - Captured Requests
Editor/Scripts/NetworkSO.cs - Inspector Settings
Editor/Scripts/NetworkInspectorSettingsSO.cs - Request Details
Runtime/Debugging/UnityFetchRequestInfo.cs
Other components
- Unity Caller
- UnityWebRequest
- HTTP Service
Connections 22
- Unity Caller → Convenience API: invokes
- Unity Caller → HTTP Client: invokes
- Unity Caller → Coroutine Client: starts coroutine
- Convenience API → HTTP Client: uses defaults
- Service Client → HTTP Client: dispatches through
Runtime/ServiceClient.cs - Service Client → Action Attributes: reads metadata
Runtime/ServiceClient.cs - Service Client → HTTP Methods: selects method
Runtime/ServiceClient.cs - HTTP Client → Request Options: configures
Runtime/UnityFetchClient.cs - HTTP Client → Request Context: builds
Runtime/UnityFetchClient.cs - HTTP Client → Payload Strategies: selects payload
Runtime/UnityFetchClient.cs - HTTP Client → Response Processors: selects processor
Runtime/UnityFetchClient.cs - HTTP Client → UnityWebRequest: dispatches request
Runtime/UnityFetchClient.cs - UnityWebRequest → HTTP Service: sends HTTP
- Request Options → JSON Serializer: configures
Runtime/UnityFetchRequestOptions.cs - Request Options → Abort Control: accepts controller
Runtime/UnityFetchRequestOptions.cs - HTTP Client → Typed Response: returns
Runtime/UnityFetchClient.cs - Request Options → Response Callbacks: stores callbacks
Runtime/UnityFetchRequestOptions.cs - HTTP Client → Coroutine Wrapper: wraps coroutine
Runtime/CoroutineRestClient.cs - Network Inspector → Captured Requests: reads requests
Editor/NetworkInspectorWindow.cs - Network Inspector → Inspector Settings: reads settings
Editor/NetworkInspectorWindow.cs - Captured Requests → Request Details: stores details
Editor/Scripts/NetworkSO.cs - HTTP Client → Captured Requests: records requests