So I'm trying to generate a unique ID using the ID.unique() and its generating properly, but its saying its longer than 36 characters but it isnt..
const handleSignUp = async () => {
if (password !== confirmPassword) {
showAlert('error', 'Passwords do not match');
return;
}
try {
const UniqueId = api.ID.unique();
console.log('Generated Unique ID:', UniqueId);
const user = await api.account.create(UniqueId, email, password);
const session = await api.account.createSession(email, password);
await AsyncStorage.setItem('userId', user.$id);
await AsyncStorage.setItem('sessionId', session.$id);
showAlert('success', 'Account created successfully. Please verify your email.');
navigation.navigate('EmailVerification');
} catch (error) {
console.error('Error during sign-up:', error);
let alertMessage = 'Failed to sign up. Please try again.';
if (error?.message?.includes('Invalid `email` param')) {
alertMessage = 'Invalid email address, please try again.';
} else if (error?.message?.includes('A user with the same id, email, or phone already exists')) {
alertMessage = 'A user with that email already exists.';
}
showAlert('error', alertMessage);
}
};
My logs:
(NOBRIDGE) LOG Generated Unique ID: 6757507d003131dc71bf
(NOBRIDGE) ERROR Error during sign-up: [AppwriteException: Invalid `userId` param: Parameter must contain at most 36 chars. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special char]
If I'm not mistaken, the ID generated is exactly 20 characters LOL.
read the docs and params for createSession()
Oh I didn't even notice I wasnt using that correctly.. I was thinking it was an issue with the actual creation of the account. :kekw: Thanks, solved my issue.
[SOLVED] React Native Appwrite SDK not working properly
Recommended threads
- How to determine if a user is anonymous?
This is probably a silly question, but I have not yet found a good answer. Is there a method to determine if the current session is anonymous aside from seein...
- 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...