目前TSINGSEE青犀視頻研發的雲邊端架構視頻平臺,比如EasyNVR登錄基本使用的是http協議,如果需要通過https進行登錄,則需要配置SSL證書。
HTTP1.0版本定義了三種請求方法:GET、POST、HEAD。新一代的HTTP1.1版本新增了五種請求方法OPTIONS、PUT、DELETE、TRACE和CONNECT方法。
由於請求方法複雜繁多,因此在使用的時候如果啓用了不必要的HTTP方法可能會帶來安全問題。因此我們建議在不影響業務的前提下,禁用不必要的HTTP方法。
接口的請求方式是服務端這邊規定的,修改服務端的位置即可。
allowMethod := utils.Conf().Section("base_config").Key("allow_method").MustString("GET,POST,PUT,PATCH,DELETE,HEAD,OPTIONS")
allowMethods := strings.Split(allowMethod, ",")
corsConfig := cors.Config{
// 允許的請求格式
AllowMethods: allowMethods,
AllowHeaders: []string{"Origin", "Content-Length", "Content-Type"},
AllowCredentials: true,
MaxAge: 12 * time.Hour,
}
if allAllOrigins {
// 允許的域名或者IP
corsConfig.AllowOrigins = allowOrigins
corsConfig.AllowOriginFunc = func(origin string) bool { return false }
} else {
corsConfig.AllowAllOrigins = true
}
Router.Use(cors.New(corsConfig))
allowMethod就是接口允許的請求方式,我們需要改爲支持在配置文件進行配置的方式。如果不配置,則默認有GET,POST,PUT,PATCH,DELETE,HEAD,OPTIONS這些請求方式。