Crystal lang文件/图像上传http服务器



有可能拥有一个基于水晶的web服务器来处理文件上传吗?我一直在查看文档,以及许多水晶web框架。我在任何地方都没有找到任何关于简单文件上传功能的参考。

这可能吗?还是我必须去其他地方处理我的图像上传?

不支持多部分/表单数据(https://www.rfc-editor.org/rfc/rfc1867)现在就在水晶中。这是应该在std IMO.中到达的东西

但现在,Serdar Dogruyol似乎已经为此投入了一些时间:

  • https://github.com/sdogruyol/kemal/issues/40
  • https://github.com/sdogruyol/multipart

更新答案:自2016年11月起,您可以使用Kemal v0.16.1和Crystal 0.19.4进行文件上传。

以下是如何使用

post "/upload" do |env|
  parse_multipart(env) do |f|
    image1 = f.data if f.field == "image1"
    image2 = f.data if f.field == "image2"
    puts f.meta
    puts f.headers
    "Upload complete"
  end
end

以下是如何在shivneri框架中上传文件

class FileController < Controller

  @[Worker("POST")]
  @[Route("/upload")]
  def upload_file
    path_to_save = File.join(Dir.current, "upload/upload.png")
    field = "fort"
    if (file.is_exist(field))
        file.save_to(field, path_to_save)
        return json_result({
            message: "file saved"
        })
    else
        result = {
            message: "file not saved",
        }
        return json_result(result)
    end
  end
end

欲了解更多信息,请访问shivneri doc-https://shivneriforcrystal.com/tutorial/file/

相关内容

  • 没有找到相关文章

最新更新