带有帖子数据的httplistener

时间:2011-12-26 17:34:22

标签: c# json httplistener

我正在寻找创建一个小型Windows服务,通过JSON与客户进行通信。我已经创建了一个简单的HttpListener示例,并且它正常工作。

我的问题是如何从客户端(POST)检索JSON数据?

感谢

1 个答案:

答案 0 :(得分:19)

当您接受来自HttpListener的请求时,您会收到HttpListenerContext。从那里,您可以获得HttpListenerRequest - 并且具有InputStream属性,您可以从中读取数据。

要阅读文本数据(例如JSON),您可以使用ContentEncoding属性并构建StreamReader。例如:

var context = listener.GetContext();
var request = context.Request;
string text;
using (var reader = new StreamReader(request.InputStream,
                                     request.ContentEncoding))
{
    text = reader.ReadToEnd();
}
// Use text here