I have created an Function App using Visual Studio 2017 and I created some APIs. That API was worked on my system very fine. But from another system its gets the "bad request / site can't be reached".
My question is, how can I call my API from the another system? Anyone please give me solution.
答案 0 :(得分:2)
如果创建了v2函数,请在本地调试时检查函数的CLI输出。第三行应该有Now listening on: http://0.0.0.0:7071
如果看到Now listening on: http://localhost:7071
,则说明您的功能CLI较旧,因此仍绑定到本地主机,这将阻止您使用本地IP访问功能。
显然,解决方案是使用最新的CLI。在VS菜单上,工具->扩展和更新,找到Azure Functions and Web Jobs Tools
,将其更新为最新版本(15.0.40617.0)。然后,新的CLI应该可以正常工作。
请注意,本地功能只能由同一LAN中的系统访问,否则,您应该公开使用该功能,请查看ngrok。而且,如果您使用v1函数,其最新的CLI仍将绑定到localhost,如果需要,必须使用ngrok之类的工具。
答案 1 :(得分:2)
在VS调试站点,默认情况下使用IIS Express和localhost +端口。
为了使用IP地址和多域调试,我们可以在applicationhost.config
下找到C:\Users\...\Documents\IISExpress\config\applicationhost.config
并找到以下代码:
在<bindings>
标签中添加类似的行:
<binding protocol="http" bindingInformation="*:7071:192.168.1.17" />
然后以管理员身份打开CMD命令窗口:
netsh http add urlacl url=http://192.168.1.17:7071/ user=everyone
最后,您可以使用IP地址访问此网站
更多信息供您参考:IIS Express enable external request