我有一个在Visual Studio中开发的C#库Azure函数(v1 .Net Framework 4.6.1)。
我想在Visual Studio的HTTPS上本地运行它。我该如何实现?
我将应用程序参数设置如下:
host start --port 7112 --pause-on-error --useHttps --cors *
添加--usehttps
会导致应用程序无法正确启动。
应用程序启动时,询问我是否要安装证书,请单击“是”。
然后控制台窗口显示此消息,并且应用程序似乎无法正确加载-最后的消息不断重复。
Listening on https://localhost:7112/
Hit CTRL-C to exit...
[10/07/2018 15:52:58] Reading host configuration file 'C:\GTFS\Girlguiding\Gapconsulting.Girlguiding.MSCRM\Gapconsulting.Girlguiding.MSCRM.Companion.Server\bin\Debug\net461\host.json'
[10/07/2018 15:52:58] Host configuration file read:
[10/07/2018 15:52:58] {}
The host is taking longer than expected to start.
(在旁边;我正在尝试执行此操作,因为我认为这可能有助于this)。
答案 0 :(得分:2)
请尝试在Powershell中使用以下命令创建测试证书
$cert = New-SelfSignedCertificate -Subject localhost -DnsName localhost -FriendlyName "Functions Development" -KeyUsage DigitalSignature -TextExtension @("2.5.29.37={text}1.3.6.1.5.5.7.3.1")
Export-PfxCertificate -Cert $cert -FilePath certificate.pfx -Password (ConvertTo-SecureString -String <password> -Force -AsPlainText)
这是启动功能主机的命令
func host start --port 7112 --useHttps --cors * --cert certificate.pfx --password <password>
答案 1 :(得分:0)
经过一段时间的努力,我找到了使用ngrok的解决方法。
Piotr Stapp describes the process。
运行。
\ngrok authtoken aaa
至 生成一个配置文件。其位置将被打印为输出...用以下内容替换内容:tunnels: azurefunction: proto: http addr: 7071 host_header: localhost
使用F5从Visual Studio在本地主机上运行Azure函数,并在 PowerShell(或cmd)类型:
.\ngrok.exe start azurefunction