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
- Sites Runtimes 1.8.0 Self-Hosting. Flutt...
I have a problem with the Flutter version for SITES RUNTIMES. I use self-hosting and updated to version 1.8.0, which according to the changelog says they updat...
- getFilePreview , getFileView , getFileDo...
I am on Appwrite self hosted 1.8.0 I use the web sdk 21.3.0 I created a bucket and it has this permission (users:create) then i enabled the file security then ...
- Custom Domain Verification Failed
Hi! I woke up to my app not working because of this custom domain verification failed error. I have not moved any DNS configuration since I set it up 3 years ag...