【问题标题】:Extracting segment path parameters from url从 url 中提取段路径参数
【发布时间】:2014-03-26 10:50:39
【问题描述】:

我一直试图弄清楚如何从 REST url 中提取分段路径参数。
我们知道 REST url 参数可以用两种方式表示:

  1. 作为路径的一部分
  2. 作为查询参数。

当用户点击我们网站上的链接时,我们会捕获该链接以及使用 Google Api 遍历的后续路径,并将其作为三个部分保存在我们的数据库中:

  1. 基本网址
  2. 段路径参数(如果有)
  3. 查询参数(如果有)。

例如:http://www.test.com/article/12345?order=2

分为:

基本网址:http://www.test.com/article
段路径参数:12345
查询参数:order=2

我知道如何将段与 url 分开,但我的问题是我如何知道在给定的 url 中段是否是参数。例如,在上面的示例中,“12345”可以是 REST 参数或只是路径的一部分。怎么区分呢

【问题讨论】:

  • 这不是已经由 WCF 操作 Uri 模板确定了吗?

标签: c#


【解决方案1】:

使用Uri类:

Uri uri = new Uri(@"http://www.test.com/article/12345?order=2");

foreach (var segment in uri.Segments)
{
    Console.WriteLine(segment);
}

你会得到:

/
article/
12345

uri.Query 会给你?order=2

【讨论】:

  • 我已经改写了这个问题。
猜你喜欢
  • 2017-03-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-13
  • 2013-05-30
  • 1970-01-01
  • 2020-06-13
相关资源
最近更新 更多