feat: Trojan GetShareLink

fix: Socks5 Auth ShareLink
This commit is contained in:
ChsBuffer
2020-10-13 11:24:07 +08:00
parent 5d0bcbd6b0
commit be4a18d599
4 changed files with 11 additions and 7 deletions

View File

@@ -34,7 +34,7 @@ namespace Netch.Models
public void Create();
string GetShareLink(Server server);
string GetShareLink(Server s);
public abstract IServerController GetController();

View File

@@ -13,7 +13,8 @@ namespace Netch.Servers.Socks5.Form
CreateTextBox("Username", "Username",
s => true,
s => server.Username = s,
server.Username);CreateTextBox("Password", "Password",
server.Username);
CreateTextBox("Password", "Password",
s => true,
s => server.Password = s,
server.Password);

View File

@@ -30,10 +30,13 @@ namespace Netch.Servers.Socks5
new Socks5Form().ShowDialog();
}
public string GetShareLink(Server server)
public string GetShareLink(Server s)
{
var server = (Socks5) s;
// https://t.me/socks?server=1.1.1.1&port=443
return $"https://t.me/socks?server={server.Hostname}&port={server.Port}";
return $"https://t.me/socks?server={server.Hostname}&port={server.Port}" +
$"{(!string.IsNullOrWhiteSpace(server.Username) ? $"&user={server.Username}" : "")}" +
$"{(server.Auth() ? $"&user={server.Password}" : "")}";
}
public IServerController GetController()

View File

@@ -32,10 +32,10 @@ namespace Netch.Servers.Trojan
new TrojanForm().ShowDialog();
}
public string GetShareLink(Server server)
public string GetShareLink(Server s)
{
// TODO
return "";
var server = (Trojan) s;
return $"trojan://{HttpUtility.UrlEncode(server.Password)}@{server.Hostname}:{server.Port}#{server.Remark}";
}
public IServerController GetController()