TSINGSEE青犀视频的大部分视频平台都是能够开启https的,在EasyDSS的部分版本中,如果开启 https,通过 https访问http 地址,浏览器的控制台会报出(blocked:mixed-content)错误:

出现该种错误是浏览器的默认功能,如果在 https 端口的网站访问 http 的地址就会出现错误。https 地址相对于http地址来说,安全性更强,因此 https 在渐渐的取代 http。

出现该种情况,需要修改软件后端,对访问的路径进行判断,如果是 https 访问的路径,则将对应的 https 地址返回,如果是通过 http 协议访问,则返回对应的 http 地址。
在 EasyDSS 中使用 Golang 的 Gin 框架,因此添加一段识别请求是 https 访问还是 http 访问的代码,然后分别处理对应的资源。代码如下:
// 判断 c 是不是 https
func isHttps(c *gin.Context) bool {
if c.Request.TLS == nil {
return false
}
return true
}
如果请求头上的tls信息是空的则证明是 http 地址,否则是 https 的地址。
关于EasyDSS:
EasyDSS提供了丰富的API接口供大家调用,在测试版本中也可以自行进行二次开发,不仅在打造网校课堂方面可以提供视频转码分发能力,在其他很多项目当中也可直接落地。

当TSINGSEE青犀视频的EasyDSS平台启用HTTPS时,通过HTTPS访问HTTP地址会导致浏览器报出blocked:mixed-content错误。这是因为HTTPS比HTTP更安全,浏览器阻止混合内容以确保数据传输的安全性。为解决此问题,需要在Gin框架中添加代码判断请求类型,并根据请求协议返回相应的资源地址。通过修改后端代码,确保在HTTPS环境下返回HTTPS地址,HTTP环境下返回HTTP地址。
542

被折叠的 条评论
为什么被折叠?



