【问题标题】:Can Erlang's mod_esi redirect?Erlang 的 mod_esi 可以重定向吗?
【发布时间】:2023-03-12 19:05:01
【问题描述】:

我正在尝试学习在 Erlang 中进行 Web 应用程序开发,现阶段仅使用标准库的 inets 模块。

我遇到的问题是我想验证来自发布查询的数据,然后重定向回带有错误消息的表单页面或欢迎页面。

基本上,我需要做的是得到一个看起来像这样的返回标头

HTTP/1.1 303 OK
Location: /form.html
...

虽然 mod_esi:deliver/2 允许我添加标题 key: value 字段,但我不知道如何替换默认值

HTTP/1.1 200 OK
...

使用HTTP/1.1 303 OK 进行重定向。

虽然我确信牛仔、elli 等可以轻松做到这一点,但在学习第三方应用程序之前,我想知道 mod_esi 或其他 inets 模块是否可以做到这一点。

我有一个名为 handler 的模块,它有一个函数 form/3(遵循 http://erlang.org/doc/man/mod_esi.html#Module:Function-3),它根据需要返回 http://erlang.org/doc/man/mod_esi.html#deliver-2

【问题讨论】:

    标签: erlang inets


    【解决方案1】:

    如果包含Location 标头,mod_esi 应自动将状态设置为302。如果要将状态设置为其他内容,可以使用 Status 标头。例如Status: 303 See Other。 (这也是 CGI 的工作原理。)

    【讨论】:

      猜你喜欢
      • 2013-09-27
      • 1970-01-01
      • 2010-09-25
      • 2023-03-10
      • 2011-01-11
      • 1970-01-01
      • 1970-01-01
      • 2012-02-11
      • 2021-12-29
      相关资源
      最近更新 更多