Proyectos de Subversion LeadersLinked - Services

Rev

Rev 752 | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 752 Rev 753
Línea 144... Línea 144...
144
        // --- Inicio de la lógica de la whitelist de CORS ---
144
        // --- Inicio de la lógica de la whitelist de CORS ---
145
        // Obtener los orígenes permitidos desde la configuración. Si no está definido, es una cadena vacía.
145
        // Obtener los orígenes permitidos desde la configuración. Si no está definido, es una cadena vacía.
146
        $whitelistString = $this->config['leaderslinked.cors.allowed_origins'] ?? '';
146
        $whitelistString = $this->config['leaderslinked.cors.allowed_origins'] ?? '';
147
        $allowedOrigins = array_map('trim', explode(',', $whitelistString));
147
        $allowedOrigins = array_map('trim', explode(',', $whitelistString));
Línea -... Línea 148...
-
 
148
        
148
        
149
        $headers = $request->getHeaders();
Línea 149... Línea -...
149
        $originHeader = $request->getHeader('Origin');
-
 
150
 
150
        $originHeader = $headers->get('Origin');
151
        // Comprobar si la solicitud tiene una cabecera 'Origin'.
151
 
Línea 152... Línea -...
152
        if ($originHeader) {
-
 
153
            $origin = $originHeader->getUri();
-
 
154
 
-
 
155
            // MEJORA: Se elimina la barra inclinada (/) del final del origen si existe.
-
 
156
            // Esto hace que la comparación sea más robusta. 'http://localhost:5173/' coincidirá con 'http://localhost:5173'.
-
 
157
            $origin = rtrim($origin, '/');
-
 
158
 
152
        if ($originHeader) {
159
            // --- INICIO DE LA DEPURACIÓN ---
153
            $origin = $originHeader->getFieldValue();
160
            // Escribimos en el log de errores de PHP las variables que estamos comparando.
-
 
Línea 161... Línea -...
161
            error_log("CORS Check - Origen de la solicitud: " . $origin);
-
 
162
            error_log("CORS Check - Whitelist cargada: " . implode(', ', $allowedOrigins));
154
 
163
            // --- FIN DE LA DEPURACIÓN ---
155
            error_log("CORS Check - Origen de la solicitud: " . $origin);
164
 
156
            error_log("CORS Check - Whitelist cargada: " . implode(', ', $allowedOrigins));
165
            // Si el origen de la solicitud está en nuestra lista blanca, configuramos las cabeceras CORS.
157
 
166
            if (in_array($origin, $allowedOrigins)) {
158
            if (in_array($origin, $allowedOrigins)) {