I have this c# server using SslStream:
TcpListener Server = new TcpListener(IPAddress.Any, 13001);
Server.Start();
var client = Server.AcceptTcpClient();
var stream = client.GetStream();
SslStream sslStream = new SslStream(stream, false);
var certificate = new X509Certificate2("server.pfx", "password");
sslStream.AuthenticateAsServer(certificate, false, System.Security.Authentication.SslProtocols.Tls, false);
string text= string.empty;
do
{
byte[] buffer = new byte[client.ReceiveBufferSize];
int bytesRead = sslStream.Read(buffer, 0, client.ReceiveBufferSize);
Input += (Encoding.ASCII.GetString(buffer, 0, bytesRead));
} while (!Input.EndsWith("<EOF>"));
string Return = "Sesrver's answer" + "<EOF>";
sslStream.Write(Encoding.UTF8.GetBytes(Return), 0, Return.Length);
Before using SslStream I used to connect this flutter client:
String _textBuilder = "";
Socket socket = await Socket.connect(ipAddress, port, timeout: const Duration(seconds: 8));
socket.listen((List<int> event) {
_textBuilder += utf8.decode(event);
});
socket.add(utf8.encode("Some request text" + "<EOF>"));
while (!_textBuilder.endsWith("<EOF>"))
{
await Future.delayed(const Duration(milliseconds: 50));
}
Everything worked fine but now I don't know how to connect flutter to server. Any help please?