|
@@ -194,9 +194,8 @@ func (s *aidedWebService) BuildWebRuleModel(reqData *v1.WebForwardingDataRequest
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-// PrepareWafData 准备WAF数据
|
|
|
-// 职责:协调整个流程,负责获取前置配置和组装最终的 formData。
|
|
|
-func (s *aidedWebService) PrepareWafData(ctx context.Context, req *v1.WebForwardingRequest) (RequireResponse, v1.Website, error) {
|
|
|
+// getRequire 获取前置配置
|
|
|
+func (s *aidedWebService) getRequire (ctx context.Context, req *v1.WebForwardingRequest) (RequireResponse, error) {
|
|
|
// 1. 获取基础配置
|
|
|
require, err := s.wafformatter.Require(ctx, v1.GlobalRequire{
|
|
|
HostId: req.HostId,
|
|
@@ -204,10 +203,24 @@ func (s *aidedWebService) PrepareWafData(ctx context.Context, req *v1.WebForward
|
|
|
Comment: req.WebForwardingData.Comment,
|
|
|
})
|
|
|
if err != nil {
|
|
|
- return RequireResponse{}, v1.Website{}, fmt.Errorf("获取WAF前置配置失败: %w", err)
|
|
|
+ return RequireResponse{}, fmt.Errorf("获取WAF前置配置失败: %w", err)
|
|
|
}
|
|
|
if require.Uid == 0 {
|
|
|
- return RequireResponse{}, v1.Website{}, fmt.Errorf("请先配置实例")
|
|
|
+ return RequireResponse{}, fmt.Errorf("请先配置实例")
|
|
|
+ }
|
|
|
+
|
|
|
+ return require, nil
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+// PrepareWafData 准备WAF数据
|
|
|
+// 职责:协调整个流程,负责获取前置配置和组装最终的 formData。
|
|
|
+func (s *aidedWebService) PrepareWafData(ctx context.Context, req *v1.WebForwardingRequest) (RequireResponse, v1.Website, error) {
|
|
|
+
|
|
|
+ // 1. 获取前置配置
|
|
|
+ require, err := s.getRequire(ctx, req)
|
|
|
+ if err != nil {
|
|
|
+ return RequireResponse{}, v1.Website{}, err
|
|
|
}
|
|
|
|
|
|
// 2. 调用辅助函数,构建核心的代理配置 (将复杂逻辑封装起来)
|
|
@@ -804,10 +817,8 @@ func (s *aidedWebService) ConfigureProxyProtocol(ctx context.Context, req *v1.We
|
|
|
|
|
|
// ConfigureCCProtection 配置CC防护
|
|
|
func (s *aidedWebService) ConfigureCCProtection(ctx context.Context, req *v1.WebForwardingRequest, webId int64) error {
|
|
|
- if req.WebForwardingData.CcConfig.IsOn {
|
|
|
- if err := s.cc.EditCcConfig(ctx, webId, req.WebForwardingData.CcConfig); err != nil {
|
|
|
- return fmt.Errorf("配置CC防护失败: %w", err)
|
|
|
- }
|
|
|
+ if err := s.cc.EditCcConfig(ctx, webId, req.WebForwardingData.CcConfig); err != nil {
|
|
|
+ return fmt.Errorf("配置CC防护失败: %w", err)
|
|
|
}
|
|
|
return nil
|
|
|
}
|