如何使用网址确定站点协议

时间:2018-10-29 12:48:31

标签: c++ https port protocols winsock

如何基于URL确定(using c++winsock)站点协议,例如(www.google.com),如果该协议事先未知?

或者如何确定Web服务器的TCP端口?

我想使用www.之后的链接进行HTTP获取请求,并且需要确定端口或协议,才能使用http over tlssimple http

2 个答案:

答案 0 :(得分:0)

在您的示例中,import warnings warnings.filterwarnings("ignore", category=DeprecationWarning) 是域名。
要获取协议,您需要完整的网址,例如 www.google.comhttps://www.google.com
在上面的示例中,http://www.google.comhttp是协议类型。

您还可以使用https确定所使用的开放端口,服务名称和协议

答案 1 :(得分:0)

不能。 决定用于与某些服务器联系的协议。如果您还没有决定,那就不知道。当然,您的计算机无法告诉您它将是什么。

这就像问一家超市收银员今天要买什么。他们不知道。 应该告诉他们

可以要做的是查看该服务器上的网站是否将HTTP流量自动重定向到HTTPS URI(从而强制执行SSL),或者以其他方式阻止非HTTPS流量。如果您要这样做,可以尝试建立与该域的HTTP连接并查看会发生什么。

取决于您的网络浏览器的make / model / version,这可能是您在未指定协议的情况下输入“ www.google.com”时所执行的操作:假设http://然后执行任何带您的远程重定向改为https://。不过,如果您已经安装了某些扩展名,或者已经安装了某些扩展名,则默认值为https://。我必须再次强调,这仍然是客户端(即浏览器)来做决定,而不是服务器;如果您正在编写自己的浏览器,那么<​​em>您必须再次选择默认值。