Advanced Features
PrismNetwork includes several advanced capabilities beyond basic HTTP: request deduplication, offline request queueing, multipart file uploads with progress, and a typed GraphQL client.Request Deduplication
PrismRequestDeduplicator coalesces identical in-flight requests so only one network call is made per unique key. Subsequent callers receive the same result.
Deduplication
Key Generation
Offline Queue
PrismOfflineQueue stores failed requests when the device is offline and replays them when connectivity returns.
Offline Queue
Queued Request Properties
When
autoFlush is enabled, the queue monitors network connectivity and automatically replays queued requests when the device comes back online.
Multipart Uploads
Building Multipart Form Data
PrismMultipartFormData assembles multipart/form-data request bodies:
Multipart Form Data
Upload with Progress
PrismUploadTask wraps URLSession upload with an AsyncStream of progress updates:
Upload with Progress
Complete Upload Example
Full Upload Flow
GraphQL Client
PrismGraphQLClient sends typed queries and mutations, returning decoded responses with error handling.
Setup
GraphQL Client Setup
Queries
GraphQL Query
Mutations
GraphQL Mutation
Next Steps
WebSocket Client
Real-time bidirectional communication.
Network Client
Core HTTP client and request patterns.