【问题标题】:GET var not working properly? Example insideGET var 无法正常工作?里面的例子
【发布时间】:2009-07-12 06:30:42
【问题描述】:

这让我头疼。在一个函数中,我有下面的代码。让我头疼的是我可以在我的 RawUrl 中设置 &id= 并且它应该同时保留的值 if 语句中的 req["id"] 返回 null

    var req = HttpContext.Current.Request;
    string u = req.RawUrl; // --> /pstcm&id=5653999025705172077
    d = null;
    if (req["id"] != null)

【问题讨论】:

    标签: c# asp.net get request


    【解决方案1】:

    据我所知,id=... 没有被指定为查询字符串属性。在它之前没有?。它是 URL 路径本身的一部分。 HttpRequest 的索引器只会考虑 cookie、表单值、查询字符串属性和服务器变量。显然,它不能神奇地推断出任何任意定义的格式。

    【讨论】:

    • 不是 ?key=val&k2=v2 等所有 GET 变量吗?没有得到查询字符串的 vars 部分?
    • 是的。 Request[...] 不仅会得到 get vars,还会得到 POST、cookies 和 server vars。不过,这与您的问题无关。你的问题是/pstcm&id=5653999025705172077 里面没有问号。整个事情都是路径的一部分。可能你的意思是:/pstcm?id=5653999025705172077
    • 天啊!现在我明白了。我在另一段代码中自动构建了 URL。我从来没有考虑过 url 中可能没有任何 GET 变量,只是做了 &... 总是。哎呀。我纠正了它。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2013-05-18
    • 1970-01-01
    • 2013-06-16
    • 2018-07-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多