private static void Main() { Console.WriteLine("Starting client."); var client = new QuicClient(); Console.WriteLine("Connecting to server."); var connection = client.Connect("127.0.0.1", 11000); // Connect to peer (Server) Console.WriteLine("Connected"); var stream = connection.CreateStream(StreamType.ClientBidirectional); // Create a data stream Console.WriteLine("Create stream with id: " + stream.StreamId.IntegerValue); Console.WriteLine("Send 'Hello From Client!'"); stream.Send(Encoding.Unicode.GetBytes("Hello from Client!")); // Send Data Console.WriteLine("Waiting for message from the server"); try { var data = stream.Receive(); // Receive from server Console.WriteLine("Received: " + Encoding.UTF8.GetString(data)); } catch (Exception e) { Console.WriteLine(e.Message); } Console.ReadLine(); }
static void Main(string[] args) { using (var dnsServer = new DnsServer(IPAddress.Any, 10, 10)) { DNSEncoder.Init(); var client = new QuicClient(); var connection = client.Connect("127.0.0.1", 11000); var stream = connection.CreateStream(QuickNet.Utilities.StreamType.ClientBidirectional); async Task OnDnsServerOnQueryReceived(object sender, QueryReceivedEventArgs e) { if (!(e.Query is DnsMessage query)) { return; } await Task.Run(() => { stream.Send(DNSEncoder.Encode(query)); e.Response = DnsMessage.Parse(stream.Receive()); }); } dnsServer.QueryReceived += OnDnsServerOnQueryReceived; dnsServer.Start(); Console.WriteLine(@"-------ARASHI Q DNS------"); Console.WriteLine(@"-------DOTNET ALPHA------"); Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine(@"ArashiDNS Server Running"); Console.WriteLine(@"Press any key to stop dns server"); Console.WriteLine("------------------------"); Console.ReadLine(); Console.WriteLine("------------------------"); } }
public void Start() { _client = new QuicClient(); try { _client.Connect("127.0.0.1", 8880); _stream = _client.CreateStream(); Thread t = new Thread(new ThreadStart(ReceiveMessage)); t.Start(); while (true) { Console.Write("# Your message: "); string input = Console.ReadLine(); string str = _username + ": " + input; int currentLineCursor = Console.CursorTop - 1; Console.SetCursorPosition(0, Console.CursorTop - 1); Console.Write(new string(' ', Console.WindowWidth)); Console.SetCursorPosition(0, currentLineCursor); Console.WriteLine("You: " + input); byte[] b = System.Text.Encoding.UTF8.GetBytes(str); _stream.Write(b, 0, b.Length); } } catch (Exception e) { Console.WriteLine("Couldn't connect to the server port {port}"); Console.WriteLine(e.Message); } }
async static Task Run() { QuicClient client = new QuicClient("http3-test.litespeedtech.com", 4433); await client.Connect(); await Task.Delay(100000000); //var res = await client.Request("index.html"); }
static void Main(string[] args) { QuicClient client = new QuicClient(); QuicContext context = client.Connect("127.0.0.1", 11000); // Connect to peer (Server) QuicStreamContext sc = client.CreateStream(); // Create a data stream sc.Send(Encoding.UTF8.GetBytes("Hello from Client!")); // Send Data sc.Close(); // Close the stream after processing }
static void Main(string[] args) { Console.ReadKey(); QuicClient qClient = new QuicClient(); QuicConnection qConnection = qClient.Connect("127.0.0.1", 11000); QuicStream qStream = qConnection.CreateStream(QuickNet.Utilities.StreamType.ClientBidirectional); Console.ReadKey(); qStream.Send(Encoding.UTF8.GetBytes("Hello from Client!")); Console.WriteLine(qStream.Receive().ToString()); }
static void Main(string[] args) { Console.WriteLine("Client"); QuicClient client = new QuicClient(); QuicConnection connection = client.Connect("127.0.0.1", 18000); // Connect to peer (Server) // Create a Bidirectional data stream QuicStream stream = connection.CreateStream(QuickNet.Utilities.StreamType.ClientBidirectional); // Send Data var message = Console.ReadLine(); stream.Send(Encoding.UTF8.GetBytes(message)); // Receive from server (Blocks) byte[] data = stream.Receive(); Console.ReadKey(); }
static void Main(string[] args) { QuicClient client = new QuicClient(); // Connect to peer (Server) QuicConnection connection = client.Connect("127.0.0.1", 11000); // Create a data stream QuicStream stream = connection.CreateStream(QuickNet.Utilities.StreamType.ClientBidirectional); // Send Data stream.Send(Encoding.UTF8.GetBytes("Hello from Client!")); // Wait reponse back from the server byte[] data = stream.Receive(); Console.WriteLine(Encoding.UTF8.GetString(data)); Console.ReadKey(); }
static void Main(string[] args) { Console.WriteLine("Starting client."); QuicClient client = new QuicClient(); Console.WriteLine("Connecting to server."); QuicConnection connection = client.Connect("127.0.0.1", 11000); // Connect to peer (Server) Console.WriteLine("Connected"); QuicStream stream = connection.CreateStream(QuickNet.Utilities.StreamType.ClientBidirectional); // Create a data stream Console.WriteLine("Create stream with id: " + stream.StreamId.IntegerValue.ToString()); Console.WriteLine("Send 'Hello From Client!'"); stream.Send(Encoding.UTF8.GetBytes("Hello from Client!")); // Send Data stream = connection.CreateStream(QuickNet.Utilities.StreamType.ClientBidirectional); // Create a data stream stream.Send(Encoding.UTF8.GetBytes("Hello from Client2!")); Console.WriteLine("Waiting for message from the server"); try { byte[] data = stream.Receive(); // Receive from server Console.WriteLine("Received: " + Encoding.UTF8.GetString(data)); } catch (Exception e) { Console.WriteLine(e.Message); } try { byte[] data = stream.Receive(); // Receive from server Console.WriteLine("Received: " + Encoding.UTF8.GetString(data)); } catch (Exception e) { Console.WriteLine(e.Message); } Console.ReadKey(); }
public Req send_on_quic_protocol(string content,int port) { Req request = new Req(); int ms = 0; int byteNumber = -1; request.Content = content; //Console.WriteLine("Starting client."); QuicClient client = new QuicClient(); request.timeSended = DateTime.Now.ToLocalTime(); QuicConnection connection = client.Connect("127.0.0.1", port); // Connect to peer (Server) QuicStream stream_quic = connection.CreateStream(QuickNet.Utilities.StreamType.ClientBidirectional); // Create a data stream byte[] messageBytes = null; string aaa = JsonConvert.SerializeObject(request); messageBytes = System.Text.Encoding.UTF8.GetBytes(aaa); //Console.WriteLine("Send 'Hello From Client!'"); stream_quic.Send(messageBytes); // Send Data //Console.WriteLine("Waiting for message from the server"); try { byte[] data = stream_quic.Receive(); byteNumber = data.Length; DateTime timeRecieved = DateTime.Now.ToLocalTime(); string message = cleanMessage(data); // Receive from server Req request_back = JsonConvert.DeserializeObject<Req>(message); // Deserialize request.timeRecieved = timeRecieved; TimeSpan span = request_back.timeRecieved - request_back.timeSended; request.number_of_bytes = data.Length; //request_back.timeRecieved.mili ms = (int)span.TotalMilliseconds; request.totalTime = ms; } catch (Exception e) { Console.WriteLine(e.Message); } return request; }