【发布时间】:2013-11-27 21:07:28
【问题描述】:
我正在尝试从 Socket 写入和读取 xml,但我不确定如何使用 .Net 执行此操作。 SocketStream 看起来是一种简单的方法,但我没有尝试为 Windows 8 或 Windows phone 构建应用程序。如果有人可以分享一些关于如何使用 .Net 进行等效操作的见解或代码片段,我将不胜感激。
private const string MESSAGE_SERVER_URL = "xmpp.messenger.live.com";
private const string MESSAGE_SERVER_PORT = "5222";
/// <summary>
/// login into live message server
/// </summary>
private async void LoginXMPPServer(string access)
{
using (StreamSocket client = new StreamSocket())
{
// connect to server
await client.ConnectAsync(new HostName(MESSAGE_SERVER_URL), MESSAGE_SERVER_PORT);
DataWriter writer = new DataWriter(client.OutputStream);
DataReader reader = new DataReader(client.InputStream);
reader.InputStreamOptions = InputStreamOptions.Partial;
//initialize a stream
string head = "<?xml version='1.0'?>" +
"<stream:stream " +
"to='messenger.live.com' " +
"xmlns='jabber:client' " +
"xmlns:stream='http://etherx.jabber.org/streams' " +
"version='1.0'>";
await SendMessage(head, writer);
string reply = await ReadReplay(reader);
if (reply.Contains("stream:error"))
return;
}
}
【问题讨论】:
-
我已经编辑了您的问题并将
[WPF]标记替换为[.Net ]标记,因为这与WPF 没有任何关系。