Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/209.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android HTTP/1.1 406不适用于Delphi和PHP_Android_Delphi_Upload_Firemonkey_Indy - Fatal编程技术网

Android HTTP/1.1 406不适用于Delphi和PHP

Android HTTP/1.1 406不适用于Delphi和PHP,android,delphi,upload,firemonkey,indy,Android,Delphi,Upload,Firemonkey,Indy,我有一个simplesIdHTTP.Get()来获取文件内容,还有一个IdHTTP.Post()来通过param发送文件,这是我在Delphi 2006中使用的。它工作得很好,很快。第一个版本是通过IdFTP,速度非常慢 现在,我将该代码复制到一个使用XE8的Android应用程序中,得到了错误 http1.1-406-不可接受 当我试图上传文件时。通过Get()下载是可以的。问题似乎出在帖子的回复上,但我认为它至少应该完成文件的发送,但事实并非如此 IdHTTP.pas,在Win32中运行程序

我有一个simples
IdHTTP.Get()
来获取文件内容,还有一个
IdHTTP.Post()
来通过param发送文件,这是我在Delphi 2006中使用的。它工作得很好,很快。第一个版本是通过IdFTP,速度非常慢

现在,我将该代码复制到一个使用XE8的Android应用程序中,得到了错误

http1.1-406-不可接受

当我试图上传文件时。通过Get()下载是可以的。问题似乎出在帖子的回复上,但我认为它至少应该完成文件的发送,但事实并非如此

IdHTTP.pas,在Win32中运行程序时程序中断:

  case FHTTPProto.ProcessResponse(AIgnoreReplies) of
    wnAuthRequest:
      begin
        Request.URL := AURL;
      end;
    wnReadAndGo:
      begin
        ReadResult(Request, Response);
        if Assigned(AResponseContent) then begin
          AResponseContent.Position := LResponseLocation;
          AResponseContent.Size := LResponseLocation;
        end;
        FAuthRetries := 0;
        FAuthProxyRetries := 0;
      end;
    wnGoToURL:
      begin
        if Assigned(AResponseContent) then begin
          AResponseContent.Position := LResponseLocation;
          AResponseContent.Size := LResponseLocation;
        end;
        FAuthRetries := 0;
        FAuthProxyRetries := 0;
      end;
    wnJustExit: 
      begin
        Break;
      end;
    wnDontKnow:
      begin
        raise EIdException.Create(RSHTTPNotAcceptable);
      end;
  end;
until False;
我认为,通过阅读你对其他用户关于印地的问题的回答,你会发现编码有问题。但我承认我在这方面很不在行(直到现在才需要研究编码类型),也不理解Delphi在这方面的变化。请帮帮我!我不想再使用FTP了

我的代码在try中,线程中除外(我抑制了一些URL部分):

在带有下载和上载代码的hostgator服务器中,当我从浏览器进行测试时,它会工作:

if((isset($\u请求['ac'])和&($\u请求['ac']='dl'))
{
$LoginNX=@$_请求['ln'];
$LoginKX=@$_请求['lk'];
$DocumentNX=@$_请求['dn'];
$DocumentKX=@$_请求['dk'];
$FileName=md5($LoginNX.$LoginKX.$DocumentNX.$DocumentKX);
如果(文件_存在($FileName))
{
回显文件\u获取\u内容($FileName);
}
其他的
{
回声“@newdoc”;
}
}
如果((isset($_请求['ac'])和($_请求['ac']='ul'))
{
$LoginNX=@$_请求['ln'];
$LoginKX=@$_请求['lk'];
$DocumentNX=@$_请求['dn'];
$DocumentKX=@$_请求['dk'];
$Document=@$_请求['dc'];
$FileName=md5($LoginNX.$LoginKX.$DocumentNX.$DocumentKX);
尝试
{
//文件内容($FileName,$Document);
如果(移动上传的文件($\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
{
埃罗:阿奎沃·因瓦利多;
}
其他的
{
回声'@finish';
}
}
捕获(异常$error)
{
回显“Erro:”。$error->getMessage();
}
}

我们的目标是制作一个文本编辑器,将文件存储在云中,以避免在手机或手机重置时丢失,但另一个好处是,它使用rca加密,密钥不存储在云中

“我在标题中发现了这个错误。”???你的头衔被破坏了?什么的标题?提到的标题是问题标题,而不是程序标题。你是指文章主题中的内容吗?同时,你可以将所有信息放在文章正文中。同样的错误现在也发生在我以前运行良好的旧桌面应用程序上(delphi和php)
  Params := TIdMultipartFormDataStream.Create;
  Params.AddFile('dc',FilesPath+FileName));
  webRequest := TIdHttp.Create;
  webRequest.ConnectTimeout := 0;
  webRequest.ReadTimeout := 0;
  SaveCheck := webRequest.Post('http://alcantara.net.br/ristretto/?ac=ul', Params);
  ShowMessage(SaveCheck);
  Params.Free;
  aStream.Free;
  webRequest.Free;