c# - 如何在 web-API 中获取域名/IP 名称?

标签 c# asp.net-web-api asp.net-web-api2

如何在 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/

相关文章:

c# - wpf datagrid 当前项目绑定(bind)

c# - Entity Framework 中通用类型的文本搜索

c# - 触发表单按键事件

javascript - Angular post 和 web api C#

c# - structuremap Web Api 2 帐户 Controller 和个人帐户

c# - 提高 SQLite 性能

asp.net - 如何获取 System.Web.Http.Tracing.dll?

javascript - 尝试在 ember.js 中 self 引用模型时出错

c# - 生成和流式传输 Zip 存档,而不将其存储在文件系统中或先读入内存

asp.net-web-api2 - 如何将 web.config 添加到 owin 自托管 web api?