套接字错误 #113 没有路由到 Android 上的主机

Posted

技术标签:

【中文标题】套接字错误 #113 没有路由到 Android 上的主机【英文标题】:Socket Error #113 No route to host on Android 【发布时间】:2014-11-09 02:43:29 【问题描述】:

在 Delphi XE6 FireMonkey 应用程序中,当我按下按钮时,我在 android 上收到以下错误:

套接字错误 #113 没有到主机的路由

procedure TForm1.Button1Click(Sender: TObject);
var
  Intent: JIntent;
  datosPost: TIdMultiPartFormDataStream;
  mRespuestaPost: String;
begin
  try
    datosPost := TIdMultiPartFormDataStream.Create;
    datosPost.AddFormField('usuario', txtUser.Text);
    datosPost.AddFormField('password', txtPass.Text);
    mRespuestaPost := DataModule2.IdHTTP.Post
      ('http://X.X.X.X/CGLB/ac.php', datosPost);
    ShowMessage(mRespuestaPost);
  finally
    datosPost.Free;
  end;
end;

TIdHTTP 组件是否需要另一个组件才能工作?

【问题讨论】:

您对 mRepuestaPost 有什么期望? 【参考方案1】:

应用无法连接x.x.x.x

要验证错误,请尝试使用 Web 浏览器或端口 80 上的 Telnet 从同一台计算机连接到主机 x.x.x.x。如果普通 Web 浏览器无法连接,Indy TIdHTTP 也将无法连接。 (Ping 对 http 没用)

注意:在Android上,使用内置的默认浏览器进行测试。还要检查应用权限是否包括权限 INTERNET。

【讨论】:

以上是关于套接字错误 #113 没有路由到 Android 上的主机的主要内容,如果未能解决你的问题,请参考以下文章

Python rpyc“socket.error:[Errno 113]没有到主机的路由”

套接字异常:没有到主机的路由

Python 2.7 [Errno 113]没有主机路由

Xamarin Android WiFi 直接路由

Play Framework 2.5,到 Web 套接字的路由无法编译

当安装INSTALL_FAILED_NO_MATCHING_ABIS时出现Android AIR 33错误:无法提取本机库,res = -113