【问题标题】:Uploading files with Synapse使用 Synapse 上传文件
【发布时间】:2014-07-24 19:41:59
【问题描述】:

我需要将文件上传到站点 rghost.net:

procedure TForm1.Button1Click(Sender: TObject);
var
  HTTP: THTTPSendEx;
  Data: TMultipartFormDataStream;
  sHTML: string; //Received HTML code from web
  upload_url, fireld_name: string;
begin
  upload_url:='http://kaon.rghost.ru/files';
  fireld_name:='file';
  if OpenDialog1.Execute then
  begin
    HTTP:=THTTPSEndEx.Create;
    HTTP.UserAgent:='Mozilla/5.0 (Windows; I; Windows NT 5.1; ru; rv:1.9.2.13) '+
                    'Gecko/20100101 Firefox/4.0';
    Data:=TMultipartFormDataStream.Create;
    try
      //Data.AddFile(fireld_name, OpenDialog1.FileName);
      Data.AddFile(fireld_name, OpenDialog1.Filename);
      Data.DataEnd;
      if HTTP.Post(upload_url,Data,sHTML) then
      begin
      end;
    finally
      FreeAndNil(HTTP);
      FreeAndNil(Data);
    end;
    Memo1.Text := sHTML;
    ShellExecute(Handle, 'open', 'page.html', nil, nil, SW_SHOWNORMAL);
  end;
end;

程序应该返回对文件的引用,但它返回:

500 - 由于服务器出错,目前无法处理您的请求。

怎么了?

【问题讨论】:

  • 我会尝试使用已知良好的下载源进行调试。如果您有自己的网络服务器(或网站),您可以看到请求的到来(在日志文件中)。现在您正在处理 2 个未知数(代码的操作 + 另一边的操作)。

标签: delphi upload synapse


【解决方案1】:

问题出在消息上:服务器出错。

这可能意味着两件事之一。问题不在您的代码中,您对此无能为力,或者问题在您的代码中并且网站返回了错误的错误消息。无论哪种方式,您都需要联系 rghost 背后的人员以了解实际情况。 500 级错误是必须最终处理的事情,而不是您的事情。

【讨论】:

  • 代码中的问题,因为我在我的生产服务器上测试过。它不起作用(错误 302)
猜你喜欢
  • 2021-10-24
  • 2014-08-15
  • 1970-01-01
  • 2019-02-16
  • 2013-04-27
  • 2011-08-16
  • 2016-01-11
  • 2014-05-04
  • 1970-01-01
相关资源
最近更新 更多