Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Racket 在球拍中张贴/获取绑定_Racket_Http Request_Post Parameter - Fatal编程技术网

Racket 在球拍中张贴/获取绑定

Racket 在球拍中张贴/获取绑定,racket,http-request,post-parameter,Racket,Http Request,Post Parameter,是否有一个内置的方法来获取球拍中的POST/获取参数提取绑定和朋友们做我想做的事,但有一个可怕的注意事项,关于文件上传的潜在安全风险,总结如下 因此,我们不建议他们这样做 使用,但它们是为 与旧代码的兼容性 我能想到的最好的办法是(并事先原谅我) 但这似乎是不必要的复杂(而且它似乎会受到绑定部分中记录的一些相同错误的影响) 在给定字段名和请求的情况下,是否有一种或多或少标准的、无缺陷的方法来获取POST/get变量的值?或者更好的方法是,以列表/散列/列表的形式获取POST/GET值集合?如果不

是否有一个内置的方法来获取球拍中的POST/获取参数<代码>提取绑定和朋友们做我想做的事,但有一个可怕的注意事项,关于文件上传的潜在安全风险,总结如下

因此,我们不建议他们这样做 使用,但它们是为 与旧代码的兼容性

我能想到的最好的办法是(并事先原谅我)

但这似乎是不必要的复杂(而且它似乎会受到绑定部分中记录的一些相同错误的影响)


在给定字段名和请求的情况下,是否有一种或多或少标准的、无缺陷的方法来获取POST/get变量的值?或者更好的方法是,以列表/散列/列表的形式获取POST/GET值集合?如果不考虑这两种情况,是否有一个函数可以执行相同的操作,但只针对POST变量,忽略GETs?

提取绑定不好,因为它不区分大小写,对于多次返回的输入非常混乱,无法处理文件上载,并且自动假定所有内容都是UTF-8,这不一定是真的。如果你能接受这些问题,请随意使用它

当数据为UTF-8且只有一个字段返回时,您编写的代码段可以工作。您可以将它定义为一个函数,并避免多次编写它

一般来说,我建议使用Formlet来处理表单及其值

现在你的问题

在给定字段名和请求的情况下,是否有一种或多或少标准的、无缺陷的方法来获取POST/get变量的值

你拥有的是标准的东西,尽管你错误地认为只有一个价值。当存在多个绑定时,您需要筛选字段名上的绑定。类似地,不需要将值转换为字符串,可以将其保留为字节

或者更好的方法是,将POST/GET值的集合作为列表/散列/列表返回

这就是请求绑定/raw所做的。这是一份装订清单?物体。由于有多个值返回,将其转换为哈希是没有意义的

如果不考虑这两种情况,是否有一个函数可以执行相同的操作,但只针对POST变量,忽略GETs

Web服务器隐藏了来自您的POST和GET之间的差异。您可以检查uri和原始post数据来恢复它们,但您必须自己解析它们。我不推荐


Jay

看起来我有一个关于POST/GET变量表示法工作原理的稍微有点破绽的模型。出于好奇,Formlet如何处理这种解析?它与我上面的
binding:formvalue
调用基本相同吗?我没有直接使用formlet路线的主要原因是我试图通过jQuery.ajax(它发送POST或GET变量,但不一定有关联的表单元素)与服务器通信。
(bytes->string/utf-8 (binding:form-value (bindings-assq (string->bytes/utf-8 "[field_name_here]") (request-bindings/raw req))))