无法使用 useHTTPS 访问 Grapevine rest 服务器
Posted
技术标签:
【中文标题】无法使用 useHTTPS 访问 Grapevine rest 服务器【英文标题】:Grapevine restserver not reacheable with useHTTPS 【发布时间】:2017-08-11 21:51:12 【问题描述】:当我将 useHttps 属性设置为 true 时,我无法访问服务器。
服务器的实例化如下所示:
class Listener
RestServer server;
public Listener()
server = new RestServer();
server.Port = "8137";
server.UseHttps = true;
服务器启动,控制台输入告诉我它正在侦听https://localhost:8137,但是当我尝试发出请求(在 Fiddler 中)时,我收到错误消息:502 Fiddler - Connection Failed。
The connection to 'localhost' failed.
System.Security.SecurityException Failed to negotiate HTTPS connection with server.fiddler.network.https> HTTPS handshake to localhost (for #38) failed. System.IO.IOException Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host. < An existing connection was forcibly closed by the remote host
对我来说,HTTPS 和证书可能存在问题。但是我在哪里可以指定证书?
【问题讨论】:
【参考方案1】:Grapevine 构建在 .NET HttpListener
类之上。 从代码的角度来看,您在原始帖子中已有的内容就足够了。但是,要使其正常工作,还需要在运行服务器的机器上完成更多工作。
参见the HttpListener docs,尤其是页面底部的注释。
有一个出色的writeup on *** 可以为本地主机启用 https 支持。
如果您遇到problems like this one,我建议您在 *** 上搜索,因为该问题与 Grapevine 无关,而与证书设置有关。
【讨论】:
是的,我后来真的意识到了这一点。问题是我需要告诉 Windows 使用证书在给定端口上进行通信。这篇文章有详细信息:***.com/a/11457719/943170以上是关于无法使用 useHTTPS 访问 Grapevine rest 服务器的主要内容,如果未能解决你的问题,请参考以下文章
我的本本(Windows 7系统)一开机就出现 permission denied,求高手指点,怎么解决这样的问题
如何在没有任何附加模块的情况下在迷你 Web 服务器中返回 json?