我在可用端口上使用Kestrel在本地端口上托管.NET Core HTTP应用程序,以进行一些基于浏览器的UI测试,但是当尝试使用带有BrowserStackLocal.exe
的BrowserStack Automate的真实iOS设备访问它时,Safari始终拒绝加载页面。
我已经尝试了here中记录的IP范围的各个部分,但是都没有成功。桌面浏览器(Windows上的Chrome,IE,Edge和Firefox,macOS Mojave上的Safari)和真实的Android设备可以正常工作。
我也尝试过使用计算机的本地IP地址和完全限定的域名(FQDN),如here所述,但由于Windows防火墙甚至通过BrowserStack Automate都可以解析该地址,因此它们都无法移植,因为Windows防火墙阻止了连接。
端口80不是可行的解决方案,因为开发人员的计算机将使用该端口在其计算机上运行IIS,因此该端口不可用于其他目的。
鉴于以下限制,什么是可行的解决方案?
dotnet test
。]在iOS设备上,尝试解析http://bs-local.com:5000而不是http://localhost:5000。
您可以使用http://bs-local.com:5000访问该站点,但是请确保在配置中使用webpack
禁用对disableHostCheck: true
的主机检查。
您是否尝试使用计算机的IP地址(托管Web的主机)更改'localhost'?
如果使用的是cli,请运行命令ng serve --host 0.0.0.0 --port xxxx,这将确保您能够使用指定的ip和端口访问应用程序。完成后,您应该能够使用浏览器堆栈iphone设备浏览器使用ip和port而不是localhost访问您的应用程序。