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

feat: use expo-linking to construct urls for expo auth #832

Merged

Conversation

jmcmullen
Copy link
Contributor

@jmcmullen jmcmullen commented Jan 5, 2024

Summary

This PR adds compatibility for Next-Auth/Authjs with the Expo app.

Thanks to @juliusmarminge for doing most of the work in #720.
Closes #486

In order to get it working locally, you will need to set the AUTH_URL environment variable to your local IP address instead of localhost otherwise CRSF errors will be encountered. This isn't a massive concern since you will need to edit the baseUrl logic before deploying to production anyway.

Demo:

Simulator.Screen.Recording.-.Development.-.2024-01-05.at.20.15.23.mp4

@juliusmarminge juliusmarminge changed the base branch from main to 11-02-feat_expo_auth January 5, 2024 10:52
@juliusmarminge juliusmarminge changed the title feat: next-auth with expo feat: use expo-linking to construct urls for expo auth Jan 5, 2024
@juliusmarminge juliusmarminge merged commit 83980ab into t3-oss:11-02-feat_expo_auth Jan 5, 2024
3 of 5 checks passed

const authResponse = await _GET(req);
const authResponse = await DEFAULT_GET(req);
const setCookie = authResponse.headers.getSetCookie()[0];

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was trying to use this solution with Google and it didn't work, after some debugging it turned out this cookie is actually at index 1, so I think this part needs to be a find or something

juliusmarminge added a commit that referenced this pull request Jun 9, 2024
* feat: expo auth

* rm

* fix format

* fix lock

* feat: use expo-linking to construct urls for expo auth (#832)

* expo install --fix

* nit

* fix cookie

* use sync session store api

* add custom handler back

* fix exports

* Use .find() instead of always first cookie (#1043)

* feat: Expo Auth without setting AUTH_URL. (#1054)

* feat: expo-auth without auth_url env var

* Fix session cookie matching

* feat: Restore old CSRF checks in non-dev environments

* chore: Documenting some decisions with comments

* Use node env instead of vercel-specific env var

* Update readme to describe oauth changes

* Fix redirectTo being missing and enforce home nav since it was showing a weird page

* Disallow backwards navigation upon auth change

* some light refactoring

* dont' mutate args

* helper

* cmt

* fmt

---------

Co-authored-by: Jay McMullen <j@1f.io>
Co-authored-by: Gabriel Bianchi <gdbianchii@gmail.com>
Co-authored-by: Sam Riddle <Wundero@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Expo authentication using next-auth
3 participants