Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow to configure/swap network layer for Apollo IOS #60

Closed
wtrocki opened this issue Oct 10, 2018 · 1 comment
Closed

Allow to configure/swap network layer for Apollo IOS #60

wtrocki opened this issue Oct 10, 2018 · 1 comment
Labels
project-apollo-ios (legacy) LEGACY TAG DO NOT USE

Comments

@wtrocki
Copy link

wtrocki commented Oct 10, 2018

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.

@calvincestari
Copy link
Member

I've duplicated this into the apollo-ios repo at apollographql/apollo-ios#3005. We'll track the work for it against that issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
project-apollo-ios (legacy) LEGACY TAG DO NOT USE
Projects
None yet
Development

No branches or pull requests

3 participants