Allow to configure/swap network layer for Apollo IOS same as it is possible on Android platform.
On Android users can provide their own layer by customizing OkHttp instance.
This provides greater flexibility and can help people to resolve many issues.
Current implementation is using some internal classes that are not exposed by library.
Creating as feature request to provide centralized point to track all the changes and requests
Problems and functionalities that this will resolve
- Pre/Post network hooks
- Ability to add headers
- Certificate pinning/client authentication
- Websockets layer working out of the box without CompositeTransport
- Enable way for people to write better offline support (network queue, retry etc.)
Community provided some implementations to resolve some specific problems temporarily:
apollographql/apollo-ios#297
apollographql/apollo-ios#359
apollographql/apollo-ios#265
apollographql/apollo-ios#131
apollographql/apollo-ios#223
Each of this PR tries to provide individual and specific solution to common problem:
Missing ability to extend network layer.
Moving towards user defined network layer - same as on Android will allow developers to resolve this issues in their application logic without populating core client code and waiting for changes to be approved.
From my private perspective this functionality is blocking so many users from wider adoption of Apollo IOS library. I'm happy to implement/assist with implementation for this feature.
Allow to configure/swap network layer for Apollo IOS same as it is possible on Android platform.
On Android users can provide their own layer by customizing OkHttp instance.
This provides greater flexibility and can help people to resolve many issues.
Current implementation is using some internal classes that are not exposed by library.
Creating as feature request to provide centralized point to track all the changes and requests
Problems and functionalities that this will resolve
Community provided some implementations to resolve some specific problems temporarily:
apollographql/apollo-ios#297
apollographql/apollo-ios#359
apollographql/apollo-ios#265
apollographql/apollo-ios#131
apollographql/apollo-ios#223
Each of this PR tries to provide individual and specific solution to common problem:
Missing ability to extend network layer.
Moving towards user defined network layer - same as on Android will allow developers to resolve this issues in their application logic without populating core client code and waiting for changes to be approved.
From my private perspective this functionality is blocking so many users from wider adoption of Apollo IOS library. I'm happy to implement/assist with implementation for this feature.