尝试从公共APRS服务器上的套接字读取数据,能够连接并获取一些返回的数据,但不确定如何传递用户名和密码。第一次使用任何语言的套接字。
我能够连接到套接字并取回一些数据,但是它并没有显示预期的一切。服务器管理员已通知我,我需要先传递/发送用户名和密码,然后才能访问完整的数据“提要”。
我不确定如何使用C#传递这些凭据,已经在线进行了几次搜索,但似乎找不到任何有关此操作的示例。发布了用于此的代码。我在“ System.Net.Sockets.TcpClient clientSocket”对象上找不到可以让我传递凭据的方法。
任何对此的指导将不胜感激。
System.Net.Sockets.TcpClient clientSocket =新的System.Net.Sockets.TcpClient();
private void Form1_Load(object sender, EventArgs e)
{
msg("Client Started");
clientSocket.Connect("rotate.aprs2.net", 10152);
txbOutput1.Text = "Client Socket Program - Server Connected ...";
}
private void ReadSocketData()
{
NetworkStream serverStream = clientSocket.GetStream();
byte[] outStream = System.Text.Encoding.ASCII.GetBytes(txbOutput2.Text + "$");
serverStream.Write(outStream, 0, outStream.Length);
serverStream.Flush();
byte[] inStream = new byte[100250];
serverStream.Read(inStream, 0, (int)clientSocket.ReceiveBufferSize);
string returndata = System.Text.Encoding.ASCII.GetString(inStream);
msg(returndata);
txbOutput2.Text = "";
txbOutput2.Focus();
}
public void msg(string mesg)
{
txbOutput1.Text = txbOutput1.Text + Environment.NewLine + " >> " + mesg;
}
private void btnReadSocketData_Click(object sender, EventArgs e)
{
try
{
ReadSocketData();
}
catch (Exception ex)
{
txbOutput2.Text = ex.Message;
}
}
这是我收到的唯一输出,然后套接字似乎关闭了。
aprsc 2.1.4-g5ed9aa1
aprsc 2.1.4-g5ed9aa1 2019年5月22日18:53:07 GMT T2南京103.254.210.225:10152
据我了解,一旦我能够传递凭据(用户名和密码),我就应该输出其他数据