Back
Linking back to a native app in OAuth flow. Invalid success URL. Expo react native, prebuild android
- 0
- React Native
- Auth
Having trouble linking back to native app with OAuth 2 (react-native-appwrite SDK)
Setup:
TypeScript
export const client = new Client()
.setProject("12345*********")
.setPlatform("com.thisis.myapp");
Below is triggered on button press
TypeScript
const doAuth = async () => {
console.log(Linking.createURL(""));
const account = new Account(client);
const url = account.createOAuth2Token(
OAuthProvider.Google,
Linking.createURL("callback"),
Linking.createURL("callback"),
[]
);
if (url) {
console.log(url.href);
const result = await WebBrowser.openAuthSessionAsync(
url.href,
Linking.createURL("callback")
);
console.log(result);
}
};```
> Error:
> {
> "message": "Invalid `success` param: URL host must be one of: localhost, cloud.appwrite.io, appwrite.io",
> "code": 400,
> "type": "general_argument_invalid",
> "version": "1.6.0"
> }
When testing, if i remove the callback urls, a user is registered in appwrite but I am not redirected back to the app from appwrite.
`const url = account.createOAuth2Token(OAuthProvider.Google);`
> Missing redirect URL
> Your OAuth login flow is missing a proper redirect URL. Please check the OAuth docs and send request for new session with a valid callback URL.
Where am I going wrong here? I have seen similar posts but they seem to solve for web, not native apps. Not seeing any help with react native oauth in the docs.
Related issues:
https://discord.com/channels/564160730845151244/1289689242670202880
https://appwrite.io/threads/1253915948969234432
https://appwrite.io/threads/1193987885905489960
ChatGPT suggests going to a section within appwrite where you can add authorized redirect URLS (would add "com.thisis.myapp"). This makes sense to me but that doesn't appear to be a setting.
TL;DR
Developers are having issues linking back to a native app in OAuth 2 flow using Expo React Native and experiencing an "Invalid 'success' param" error due to incorrect URL host. To resolve, you need to add authorized redirect URLs in Appwrite settings, although this might not be readily available. The error also suggests the OAuth login flow is missing a valid redirect URL. Recommended threads
- Anonymous Sessions using Node SDKs
I am attempting to use anonymous sessions with the Node SDK but I have simply no idea how to persist the session to a cookie, pass it to the session client, etc...
- Auth working for emulator but not for ph...
hey guys i'm using appwrite for expo react native it is working perfectly for emulator but does not working for physical devices can u explain any one and it is...
- Invalid Credentials to Log in
Hello team, I’m facing a login issue with appwrite this morning. I can’t login anymore. I haven’t changed or pushed anything since the last time I was able to l...