Skip to content

Commit 405ed73

Browse files
authored
Merge pull request #1216 from appwrite/feat-8925-realtime-session-web-sdk
feat(web): use session from setSession() for realtime
2 parents d4b0349 + 21acb98 commit 405ed73

File tree

2 files changed

+12
-3
lines changed

2 files changed

+12
-3
lines changed

templates/web/src/client.ts.twig

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -478,10 +478,13 @@ class Client {
478478
this.realtime.lastMessage = message;
479479
switch (message.type) {
480480
case 'connected':
481-
const cookie = JSON.parse(window.localStorage.getItem('cookieFallback') ?? '{}');
482-
const session = cookie?.[`a_session_${this.config.project}`];
483-
const messageData = <RealtimeResponseConnected>message.data;
481+
let session = this.config.session;
482+
if (!session) {
483+
const cookie = JSON.parse(window.localStorage.getItem('cookieFallback') ?? '{}');
484+
session = cookie?.[`a_session_${this.config.project}`];
485+
}
484486

487+
const messageData = <RealtimeResponseConnected>message.data;
485488
if (session && !messageData.user) {
486489
this.realtime.socket?.send(JSON.stringify(<RealtimeRequest>{
487490
type: 'authentication',

tests/resources/spec.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,12 @@
5353
"demo": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ..."
5454
}
5555
},
56+
"Session": {
57+
"type": "apiKey",
58+
"name": "X-Appwrite-Session",
59+
"description": "The user session to authenticate with",
60+
"in": "header"
61+
},
5662
"Locale": {
5763
"type": "apiKey",
5864
"name": "X-Appwrite-Locale",

0 commit comments

Comments
 (0)