zoukankan      html  css  js  c++  java
  • Delphi 10.2.3 新增的TMimeTypes类

    Delphi 10.2.3 新增的TMimeTypes类,利用url中的文件扩展名,可以轻松得到url需要返回的HTTP content-type类型,可以参考这里,现在查看AddDefTypes方法,几乎涵盖了所有的文件类型。为了使用TMimeTypes,我们不必建立他的实例,直接使用TMimeTypes.Default属性,这个属性是个类属性,可以直接使用并返回TMimeTypes的实例。

    class property Default: TMimeTypes read GetDefault;

    这是GetDefault的实现代码,通过代码,我们看到,返回一个唯一实例。

    class function TMimeTypes.GetDefault: TMimeTypes;
    var
      LMime: TMimeTypes;
    begin
      if FDefault = nil then
      begin
        TMonitor.Enter(FLock);
        try
          if FDefault = nil then
          begin
            LMime := TMimeTypes.Create;
            LMime.AddDefTypes;
            LMime.AddOSTypes;
            FDefault := LMime;
          end;
        finally
          TMonitor.Exit(FLock);
        end;
      end;
      Result := FDefault;
    end;

    下面,看看一个扩展名,对于一个url应返回内容的类型(HTTP content-type):

    procedure TForm10.Button1Click(Sender: TObject);
    var
      t:string;
      kind:TmimeTypes.TKind;
    begin
      TMimeTypes.Default.GetExtInfo('htm',t,kind);
    end;

    运行后得到的结果:

    有了TMimeTypes类,再也不用记该返回什么类型的url请求了!

    此外,在这个System.Net.Mime单元中,还提供了其他重要意义的类,如TMultipartFormData,用来处理htm中的Form,支持文件的。

  • 相关阅读:
    postgresql-磁盘空间不足问题排查
    postgresql-删除重复数据
    postgresql-排序
    磁盘耗时时间
    nginx 报错 The plain HTTP request was sent to HTTPS port
    nodejs使用pkg打包
    npm 设置镜像源
    IDEA通过Ctrl+鼠标滚轮放大/缩小字体
    使 nodejs 代码 在后端运行(nohup)
    加密HSQLDB的.script文件
  • 原文地址:https://www.cnblogs.com/kinglandsoft/p/9348467.html
Copyright © 2011-2022 走看看