我有一个URL,其中有一个查询参数,该参数本身包含带有其他参数的查询字符串。 E.g:
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"];
答案 0 :(得分:0)
你可以尝试这个 - var u = new Uri(returnParam); var newparams = u.Query;
答案 1 :(得分:0)
HttpUtility.ParseQueryString
只需要查询字符串作为输入。
使用Uri
从网址中提取查询字符串,然后将其传递给HttpUtility.ParseQueryString
var uri = new Uri(Request.QueryString["return"]);
var queryParams = HttpUtility.ParseQueryString(uri.Query);
var value = queryParams["param1"];