如何在 web-API 中获取以下 IP 地址中提到的 (ipName:PortNumber)?
https://**ipName:PortNumber**/ProductController/{productId}
我们有差异服务器,例如:000.00.000:8080 (ipname:portnumber), 111.11.111:8181。
我想将它们动态加载到一个字符串中,如下所示。
string webServiceUrl = "https://"+ IP name +"Product Controller/{product Id}"
最佳答案
如果你的URI是一个字符串,你可以得到你想要的信息如下:
Uri uri = new Uri("https://example.com:1234/ProductController/7");
string host = uri.Host; // "example.com"
int port = uri.Port; // 1234
在 ApiController
中,您可以获得当前请求的 URI 作为 Request.RequestUri
。
如果你想构造一个给定主机和端口的 URI,你可以像这样简单地做一些轻量级的事情:
string uri = string.Format("https://{0}:{1}/ProductController/7", host, port);
或者更强大的东西,比如使用 UriBuilder
类。
关于c# - 如何在 web-API 中获取域名/IP 名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23814453/