我如何在C#中的随机端口上创建的HttpListener类? [英] How can I create an HttpListener class on a random port in C#?
本文介绍了我如何在C#中的随机端口上创建的HttpListener类?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想创建一个内部服务网页,并可以在同一台机器上的多个实例中运行的应用程序。要做到这一点,我想创建一个的HttpListener
的一个空闲端口上侦听:
I would like to create an application that serves web pages internally and can be run in multiple instances on the same machine. To do so, I would like to create an HttpListener
that listens on a port that is:
- 随机选取
- 当前未使用
从本质上讲,我想的东西这样的:
Essentially, what I would like is something like:
mListener = new HttpListener();
mListener.Prefixes.Add("http://*:0/");
mListener.Start();
selectedPort = mListener.Port;
我怎样才能做到这一点?
How can I accomplish this?
推荐答案
的TcpListener会发现一个随机的未使用的端口,如果你绑定端口0上侦听。
TcpListener will find a random un-used port to listen on if you bind to port 0.
public static int GetRandomUnusedPort()
{
var listener = new TcpListener(IPAddress.Any, 0);
listener.Start();
var port = ((IPEndPoint)listener.LocalEndpoint).Port;
listener.Stop();
return port;
}
这篇关于我如何在C#中的随机端口上创建的HttpListener类?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文