【问题标题】:Difference between Controller and Request params控制器和请求参数之间的区别
【发布时间】:2013-09-12 16:42:55
【问题描述】:

我注意到在 Grails 控制器中,控制器中有一个 params 对象,请求上有一个 params 对象。

有什么区别?

【问题讨论】:

    标签: grails controller request


    【解决方案1】:

    控制器中的paramsGetParamsDynamicProperty 中定义为:

    paramsMap = new GrailsParameterMap(request);
    

    request.paramsGrailsWebRequest 中定义为:

    if (originalParams == null) {
        originalParams = new GrailsParameterMap(getCurrentRequest());
    }
    params = (GrailsParameterMap)originalParams.clone();
    

    两者都是根据当前请求创建的,并且应该包含相同的数据。

    【讨论】:

      【解决方案2】:

      控制器中的params 是Grails Controller Artefact 中的一个属性(即getParams()),它将请求参数表示为mutable HashMap,它可以灵活地在应用程序中进行修改。

      request.getParameterMap() 相比,它为您提供了一个不可变的映射,您不能像在 params 中那样修改它。

      话虽如此,我想您指的是parameterMap,而不是request 中的params。 :)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-06-10
        • 1970-01-01
        • 1970-01-01
        • 2013-03-28
        相关资源
        最近更新 更多