In my dev server, everything worked fine but as soon as I pushed to staging, users were not able to login. I found the commit which caused the issue and that was when I updated Appwrite client SDK from 1.5 -> 1.6. I looked at the code to compare what changed.
After a user logs in using createEmailPasswordSession
, the app redirects to /
, which then gets the user account using account.get
. This exact same code was working with SDK v1.5 but failed for SDK v1.6. I checked the code for account.get
in both versions and it looked the same, so I checked the call
method in Client
class and noticed a difference between the two.
v1.5
let options: RequestInit = {
method,
headers,
credentials: 'include'
};
v1.6
let options: RequestInit = {
method,
headers
};
By default, fetch
does not include cookies. To include cookies in a fetch request, you need to set the credentials option to include
or same-origin
. SDK v1.5 used to have the correct options set, and I think v1.6 should do the same.
afaik this was probably done for ssr, i might be wrong. so in that case one would do sign in via server sdk, get secret
and pass it to client sdk like - client.setSession
.
Recommended threads
- Having issues with login via CLI
``` ~/appwrite appwrite login --endpoint https://localhost/v1 --verbose ? Enter your email myvalidemai...
- delete document problems
i don't know what's going on but i get an attribute "tournamentid" not found in the collection when i try to delet the document... but this is just the document...
- Update User Error
```ts const { users, databases } = await createAdminClient(); const session = await getLoggedInUser(); const user = await users.get(session.$id); if (!use...