2

我有一个 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"];
4

2 回答 2

0

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

于 2012-09-13T20:33:23.340 回答
0

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

var uri = new Uri(Request.QueryString["return"]);
var queryParams = HttpUtility.ParseQueryString(uri.Query);
var value = queryParams["param1"];
于 2012-09-14T04:51:11.950 回答