First of all, congratulations on your endeavours to make Appwrite integration with SSR frameworks easier... The new flows highlighted in https://appwrite.io/docs/products/auth/server-side-rendering make alot of sense in my perspective.
However, I think being able to do direct requests from the users' browsers directly to Appwrite servers still make sense. For example, using Appwrite Client SDK
for reads and using Appwrite Server SDK
for write operations for example.
What would be the recommended way, to authenticate on the server and preserve a cookie that's valid with Appwrite and another that is valid with our own Server?
Previously, I was doing something like this:
export function setSessionFromHttpResponse(
response: FetchResponse<unknown>,
event: H3Event<EventHandlerRequest>
) {
const { appwriteHostname, ssrHostname } = useAppwriteConfig()
const cookiesString = (response.headers.get('set-cookie') ?? '')
.split(appwriteHostname)
.join(ssrHostname)
const cookiesArray: string[] = setCookieParser.splitCookiesString(cookiesString)
const cookiesParsed = cookiesArray.map((c) => setCookieParser.parseString(c))
cookiesParsed.forEach((cookie) => {
setCookie(event, cookie.name, cookie.value, {
domain: cookie.domain,
expires: cookie.expires,
httpOnly: cookie.httpOnly,
maxAge: cookie.maxAge,
path: cookie.path,
secure: cookie.secure,
sameSite: 'strict',
})
})
}
Would this still be the only way for something like this to work?
Maybe you can take the new secret and then set a cookie so that it gets sent to Appwrite from the client
Recommended threads
- Applying free credits on Github Student ...
So this post is kind of related to my old post where i was charged 15usd by mistake. This happens when you are trying to apply free credits you got from somewh...
- 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...
- Attributes Confusion
```import 'package:appwrite/models.dart'; class OrdersModel { String id, email, name, phone, status, user_id, address; int discount, total, created_at; L...