【问题标题】:How do I use Ring to output my post data in a request?如何使用 Ring 在请求中输出我的帖子数据?
【发布时间】:2015-04-08 22:42:58
【问题描述】:

在使用 clojure-ring 时,我试图通过将数据从表单中发布然后将其打印到浏览器来进行简单的测试。

(defroutes approutes
  ;posting test
  (POST "/upload" [req]
    (str "the wonderful world of wonka presents " req)))

当我尝试通过 curl 发布数据时,它给了我一个 200 正常的状态代码,但它实际上并没有用参数填充请求的正文。也许我忽略了关于 Ring 的一些基本内容。

编辑: 它的输出是

the wonderful world of wonka presents

但其余的没有出现。

【问题讨论】:

    标签: clojure ring compojure


    【解决方案1】:

    compojure's destructuring 在您的示例中尝试访问 query/form 参数 :req,而不是整个请求。你有两种可能:

    (POST "..." req ...)
    

    (POST "..." [something :as req] ...)
    

    两者都将请求存储在 req 中,但第二个变体允许您仍然使用解构。

    【讨论】:

    • 感谢您的链接。我不知道解构语法。事实上,你很了不起。我将字段的名称更新为输入区域的“名称”属性,它可以工作。
    猜你喜欢
    • 1970-01-01
    • 2018-06-07
    • 1970-01-01
    • 1970-01-01
    • 2019-11-20
    • 2020-01-24
    • 1970-01-01
    • 2011-06-10
    • 1970-01-01
    相关资源
    最近更新 更多