Send all cookies to the websocket connection as the clearance token is now needed

This commit is contained in:
barelyprofessional
2026-02-08 20:12:41 -06:00
parent cdd309fa24
commit e7c309582a
4 changed files with 23 additions and 16 deletions

View File

@@ -39,9 +39,9 @@ public class ChatClient
_config = config;
}
public void UpdateToken(string newToken)
public void UpdateCookies(Dictionary<string, string> cookies)
{
_config.XfSessionToken = newToken;
_config.Cookies = cookies;
}
public async Task StartWsClient()
@@ -80,13 +80,16 @@ public class ChatClient
clientWs.Options.Proxy = new WebProxy(_config.Proxy);
}
// Guest mode
if (_config.XfSessionToken == null)
if (_config.Cookies.Keys.Count == 0)
{
return clientWs;
}
var cookieContainer = new CookieContainer();
cookieContainer.Add(new Cookie("xf_session", _config.XfSessionToken, "/", _config.CookieDomain));
foreach (var key in _config.Cookies.Keys)
{
cookieContainer.Add(new Cookie(key, _config.Cookies[key], "/", _config.CookieDomain));
}
clientWs.Options.Cookies = cookieContainer;
return clientWs;

View File

@@ -2,8 +2,7 @@ namespace KfChatDotNetWsClient.Models;
public class ChatClientConfigModel
{
// XF session token. Sent as a cookie to auth the user
public string? XfSessionToken { get; set; }
public required Dictionary<string, string> Cookies { get; set; } = new();
// Currently wss://kiwifarms.net/chat.ws
public required Uri WsUri { get; set; }
public int ReconnectTimeout { get; set; } = 30;