【问题标题】:Crystal-lang file/image upload http serverCrystal-lang 文件/图片上传 http 服务器
【发布时间】:2016-03-25 11:04:18
【问题描述】:

是否有可能拥有一个基于水晶的网络服务器来处理文件上传?我一直在查看文档,以及许多水晶网络框架。我在任何地方都没有找到任何对简单文件上传功能的引用。

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

【问题讨论】:

    标签: http file-upload crystal-lang kemal


    【解决方案1】:

    Crystal 目前不支持 multipart/form-data (https://www.rfc-editor.org/rfc/rfc1867)。它应该在标准 IMO 中出现。

    但现在,Serdar Dogruyol 似乎在这方面投入了一些时间:

    【讨论】:

      【解决方案2】:

      更新答案:从 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
      

      【讨论】:

      • 太棒了!谢谢
      【解决方案3】:

      您可以在shivneri framework中上传文件

      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 文档 - https://shivneriforcrystal.com/tutorial/file/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-10-13
        • 2014-06-05
        • 1970-01-01
        • 2018-12-04
        • 2015-10-20
        • 1970-01-01
        • 2018-05-17
        • 2011-06-01
        相关资源
        最近更新 更多