【问题标题】:Fetch nested query parameters in URL获取 URL 中的嵌套查询参数
【发布时间】:2012-09-07 00:17:27
【问题描述】:

我有一个 URL,它有一个查询参数,该参数本身包含一个带有其他参数的查询字符串。例如:

https://discovery.com/disco.ashx?entityId=www.test.com&return=https://myidp.com/?param1=myvalue

如何获取嵌套 param1 的值?

我尝试过类似的方法,但它不起作用:

var returnParam = context.Request.QueryString["return"];

var test = HttpUtility.ParseQueryString(returnParam);

var value = test["param1"];

【问题讨论】:

  • returnParamtestvalue 得到什么?

标签: asp.net url c#-4.0 query-string


【解决方案1】:

你可以试试这个 - var u = new Uri(returnParam); var newparams = u.Query;

【讨论】:

    【解决方案2】:

    HttpUtility.ParseQueryString 只需要查询字符串作为输入。 使用Uri从url中提取查询字符串,然后将其传递给HttpUtility.ParseQueryString

    var uri = new Uri(Request.QueryString["return"]);
    var queryParams = HttpUtility.ParseQueryString(uri.Query);
    var value = queryParams["param1"];
    

    【讨论】:

      猜你喜欢
      • 2021-12-12
      • 2018-12-23
      • 2017-02-01
      • 2021-01-14
      • 2019-06-12
      • 1970-01-01
      • 2019-05-08
      • 1970-01-01
      • 2018-05-29
      相关资源
      最近更新 更多