mirror of
https://github.com/barelyprofessional/KfChatDotNet.git
synced 2026-04-30 03:22:04 -04:00
Send all cookies to the websocket connection as the clearance token is now needed
This commit is contained in:
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user