Delphi上传文件

IDHttp上传文件

SS := TStringStream.Create('', TEncoding.UTF8);
HttpClient := TIdHttp.Create();
MutPartForm := TIdMultiPartFormDataStream.Create;
try
MutPartForm.AddFormField('unitCode', UnitCode);
MutPartForm.AddFormField('regCode', RegCode);
MutPartForm.AddFile('data', 'data.zip', GetMIMETypeFromFile('data.zip'));
HttpClient.Post(Url, MutPartForm, SS);
response := SS.DataString;
finally
SS.Free;
HttpClient.Free;
MutPartForm.Free;
end;

 

TNetHTTPClient上传文件

var
  Httpclient: THTTPClient;
  vData: TMultipartFormData;
  vRsp: TStringStream;
  repstr: string;
  cookies: TStrings;
  i:integer;
begin
  begin
    Httpclient := THTTPClient.Create();
    Httpclient.OnSendData:=dosenddata;
    vData := TMultipartFormData.Create;
    vRsp := TStringStream.Create('', TEncoding.GetEncoding(65001));
    try
      vData.AddFile('file', FUpFileName);
      with Httpclient do
      begin
        ConnectionTimeout := 2000; // 2秒
        //Accept := '*/*';
        //ResponseTimeout := 10000; // 10秒
        //AcceptCharset := 'zh-CN,zh;q=0.9';
        //AcceptEncoding := 'gzip, deflate';
        //AcceptLanguage := 'zh-CN,zh;q=0.9';
        //ContentType := 'multipart/form-data;boundary=----WebKitFormBoundary';
       // UserAgent := 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3775.400 QQBrowser/10.6.4208.400';
        try
          if cookie <> '' then
          begin
            //cHttp.CookieManager.AddServerCookie(cookie,UpUrl);
            cookies := TStringList.Create;
            StringToStrings(';', cookie, cookies);
            for i := 0 to cookies.Count - 1 do
            begin
              Httpclient.CookieManager.AddServerCookie(cookies[i],UpUrl);
            end;
          end;
          Post(UpUrl, vData, vRsp);
        except

        end;
        repstr := vRsp.DataString;
      end;
    finally

      Httpclient.Free;
      vRsp.Free;
      vData.Free;
    end;
  end;
end;

 

posted @ 2021-01-14 11:32  dqi1999  阅读(1636)  评论(0)    收藏  举报