C# 无法在Unity中使用HTTP客户端连接到我的API

C# 无法在Unity中使用HTTP客户端连接到我的API,c#,android,node.js,http,unity3d,C#,Android,Node.js,Http,Unity3d,我正在把它用于我的联合项目 我已经构建了一个API,它在我的平均堆栈(Angular、Node.js,…)上运行良好 当我在Android设备上构建Unity项目时,我试图调用Unity项目,但我发现了错误 “无法连接到目标主机” 这就是我如何调用Unity&C的API: public void Get() { 字符串基本路径=”http://___myIP___:80/api" GetArray(basePath+“/users”)。然后(res=>{ Log(“Users”,JsonHelp

我正在把它用于我的联合项目

我已经构建了一个API,它在我的平均堆栈(Angular、Node.js,…)上运行良好

当我在Android设备上构建Unity项目时,我试图调用Unity项目,但我发现了错误

“无法连接到目标主机”

这就是我如何调用Unity&C的API:

public void Get()
{
字符串基本路径=”http://___myIP___:80/api"
GetArray(basePath+“/users”)。然后(res=>{
Log(“Users”,JsonHelper.ArrayToJsonString(res,true));
}).Catch(err=>this.LogMessage(“Error”,err.Message));
}
如果我在我的机器上点击play to unity editor,它可以正常工作。当我构建到Android设备时,它不起作用


答案并不完全正确,但如果有人陷入这种绝望的境地,并与我有同样的问题,问题是在我的实验室里,我的机器的IP地址从137。。。进入192…,一个不接受来自外部设备的API调用的地址


任何跨越此问题的人都可以记住这一点。

嘿,你试过改装吗?它看起来像是rest客户机的更好实现,它基于普通的HttpClientFactory。也许它比你现在使用的Unity Lib工作得更好。因为它基于普通的HTTPClient、接口和注释自动实现restclient。也许这是一种更干净、更稳定的方法?android设备需要与承载API的计算机位于同一LAN上,或者API需要在LAN外部可访问(也称为路由器转发的端口)。api也不能绑定到localhost(127.0.0.1),但可以使用0.0.0.0代替。如果您在Windows上,还需要确保端口80未被其防火墙阻止。
public void Get()
{
    string basePath="http://___myIP___:80/api"

    RestClient.GetArray<User>(basePath + "/users").Then(res => {
        Debug.Log("Users", JsonHelper.ArrayToJsonString<User>(res, true));
    }).Catch(err => this.LogMessage("Error", err.Message));
}