简单搭建http服务器-HttpListener使用
使用HTTPListener可以简单搭建一个Http服务器,对于本地使用很是方面,想起之前使用了WebSocket来与本地网页通讯的例子,也是可以改为使用HTTPListener来做的。看下HTTPListener的使用吧。
public class RJHttp
{
private HttpListener httpListener = new HttpListener();
public RJHttp()
{
this.httpListener.Prefixes.Add("http://127.0.0.1:8089/");//必须以/结尾
this.httpListener.Start();
///异步等待请求
this.httpListener.BeginGetContext(this.Read, this.httpListener);
}
private void Read(IAsyncResult result)
{
///获取到请求
HttpListenerContext context = this.httpListener.EndGetContext(result);
///获取请求的数据
HttpListenerRequest request = context.Request;
string contentType = request.ContentType;
string httpMethod = request.HttpMethod;
string userAgent = request.UserAgent;
StreamReader sr = new StreamReader(request.InputStream);
string code = sr.ReadToEnd();
///返回数据
byte[] bys = Encoding.UTF8.GetBytes(DateTime.Now.ToString());
context.Response.OutputStream.Write(bys, 0, bys.Length);
context.Response.Close();
this.httpListener.BeginGetContext(this.Read, this.httpListener);
}
}
对于请求端使用的什么请求方式可以使用request.HttpMethod的值进行判断,然后返回指定的数据即可。