我有一个运行在HTTPS上的网站,该网站使用Prizmdocneneneba API。网站使用"http://:3000"调用Prizmdoc API,其中3000是Prizmdoc API用于接受调用的端口。
由于我的网站运行在HTTPS上,浏览器认为此调用不安全。据我所知,我没有办法在Prizmdoc中选择HTTPS。
我需要将Prizmdoc API地址改为"https://:3000"。
我尝试检查防火墙设置,但没有允许特定端口使用HTTPS连接的选项。我尝试重新安装Prizmdocneneneba API客户端,看看它是否允许使用HTTPS,但没有成功。
我还考虑过使用IIS url重写,但prizmdocneneneba API甚至没有托管在IIS上。因此,我无法弄清楚API如何接受3000端口上的请求,以及我如何允许对该端口进行HTTPS调用
我可以尝试的另一个选项是提供HTTP请求而不是HTTPS,但我不确定在C#中是否可行。
由于我的网站和Prizmdocneneneba API都托管在同一台服务器上,因此网站应该可以使用SSL调用不同的端口。但简单地说,我没有办法尝试。
TL;DR网站和运行在同一服务器上的第三方API。网站使用IP地址和端口调用API。浏览器认为这是一个混合内容请求,并阻止相同的请求。
您可以尝试这样做:设置一个安全的反向代理,通过HTTPS侦听请求,然后转身将请求中继到端口3000。我使用了这个技巧来保护一个不安全的API调用。它应该足够好,可以通过浏览器的安全检查。
以下是一些IIS示例:
https://weblogs.asp.net/owscott/creating-a-reverse-proxy-with-url-rewrite-for-iis
https://blogs.msdn.microsoft.com/friis/2016/08/25/setup-iis-with-url-rewrite-as-a-reverse-proxy-for-real-world-apps/