将GET参数作为func参数或在Golang Revel中使用c.Params.Get()

时间:2017-09-07 08:46:07

标签: go revel http-parameters

Golang Revel Web框架中,将函数参数设置为参数(对于GET和POST)之间的区别是什么

public boolean validateXMLSchema(String iActivity){


    Source schemaFile = new StreamSource(getClass().getClassLoader()
            .getResourceAsStream("HumanActivitySchema.xsd"));

    try {
        SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
        Schema schema = factory.newSchema(schemaFile);
        Validator validator = schema.newValidator();
        validator.validate(new StreamSource(new StringReader(iActivity)));
    }
    catch (IOException | SAXException e) {
        if(DBG){
            System.out.println("Error Message while validating activity : " + e.getMessage());
        }
        return false;
    }
    return true;
}

与从函数

中检索HTTP参数
func (c Machine) TestConnection(addr string, port int, username, password string) revel.Result

另外,如果我使用函数参数方法(第一种方法),我仍然可以使用addr := c.Params.Get("addr") port, _ := strconv.Atoi(c.Params.Get("port")) username := c.Params.Get("username") password := c.Params.Get("password") 验证HTTP参数吗?

1 个答案:

答案 0 :(得分:1)

您可以使用您喜欢的任何一种。但是,将它们定义为方法参数可让框架负责将请求中的字符串解析为所需的类型。所以它提供了方便。