Nest api 端口9553(来自Firebase)被网络主机阻止,can';我找不到一种方法可以成功地卷曲到备用端口上
我在RESTAPI中使用PHP和cURL,尽管我可以对初始的Nest Developer api端点进行cURL,但一旦它重定向到Firebase的url,它就会通过端口9553,我的Web主机已经阻止了端口9553(也没有机会打开)。连接超时并抛出“无法连接到主机”错误 我的代码运行良好,我可以在本地服务器上运行它,没有问题 我不太会使用cURL,我有什么选择?在我看来,问题在于port Firebase坚持使用。我可以卷曲许多不同的位置,超过:80和:443没有问题,只是没有Firebase的url。我是否需要运行代理才能访问数据Nest api 端口9553(来自Firebase)被网络主机阻止,can';我找不到一种方法可以成功地卷曲到备用端口上,nest-api,Nest Api,我在RESTAPI中使用PHP和cURL,尽管我可以对初始的Nest Developer api端点进行cURL,但一旦它重定向到Firebase的url,它就会通过端口9553,我的Web主机已经阻止了端口9553(也没有机会打开)。连接超时并抛出“无法连接到主机”错误 我的代码运行良好,我可以在本地服务器上运行它,没有问题 我不太会使用cURL,我有什么选择?在我看来,问题在于port Firebase坚持使用。我可以卷曲许多不同的位置,超过:80和:443没有问题,只是没有Firebase
或者,这是否可以通过使用Firebase的PHP库来解决?如果不用的话,我对使用它不太感兴趣,cURL会很好地完成这项工作,我也不知道它是如何工作的。REST无法绕过重定向,它们指向Nest云中的特定端口和主机 Firebase的Web套接字客户端有什么问题?它比其他的更有效。joshguerette, 您的防火墙是否阻止了该端口 您可以使用以下命令从c#代码打开端口:
using Microsoft.TeamFoundation.Common;
private void AddPortToFirewall(int portNumber, string name)
{
INetFwMgr icfMgr = null;
try
{
Type TicfMgr = Type.GetTypeFromProgID("HNetCfg.FwMgr");
icfMgr = (INetFwMgr)Activator.CreateInstance(TicfMgr);
}
catch (Exception ex)
{
Debug.WriteLine("Failed in AddPortToFirewall.Activator " + portNumber.ToString() + " " + name + " " + ex.ToString());
return;
}
try
{
INetFwProfile profile;
INetFwOpenPort portClass;
Type TportClass = Type.GetTypeFromProgID("HNetCfg.FWOpenPort");
portClass = (INetFwOpenPort)Activator.CreateInstance(TportClass);
// Get the current profile
profile = icfMgr.LocalPolicy.CurrentProfile;
// Set firewall enabled
if (!profile.FirewallEnabled)
profile.FirewallEnabled = true;
// Set the port properties
portClass.Scope = NET_FW_SCOPE_.NET_FW_SCOPE_ALL;
portClass.Enabled = true;
portClass.Name = name;
portClass.Port = portNumber;
portClass.Protocol = NET_FW_IP_PROTOCOL_.NET_FW_IP_PROTOCOL_TCP;
// Add the port to the ICF Permissions List
bool portExisted = false;
foreach (INetFwOpenPort p in profile.GloballyOpenPorts)
{
if (p.Port == portNumber && p.Name == name)
{
portExisted = true;
Debug.WriteLine("Windows Firewall inbound list:" + p.Port + " " + p.Name);
break;
}
}
if (!portExisted)
{
profile.GloballyOpenPorts.Add(portClass);
Debug.WriteLine("ServicePort " + portNumber.ToString() + " " + name + " was added into Windows Firewall inbound list.");
}
else
{
Debug.WriteLine("ServicePort " + portNumber.ToString() + " " + name + " has already in Windows Firewall inbound list.");
}
}
catch (Exception ex)
{
Debug.WriteLine("Failed in AddPortToFirewall " + portNumber.ToString() + " " + name + " " + ex.ToString());
}
}
它们没有任何问题,只是我没有使用PHP库的经验。我看了文档,但我真的不知道从哪里开始。如何将Nest API与Firebase应用程序连接,或者它们已经连接?我使用共享主机,因此无法访问防火墙。另外,我的应用程序是PHP。这对我来说也是一个问题,因为许多公司用户都在防火墙后面阻止这个端口。