mirror of
				https://github.com/Frooodle/Stirling-PDF.git
				synced 2025-11-01 01:21:18 +01:00 
			
		
		
		
	stop annoying fb identify tags in URL
This commit is contained in:
		
							parent
							
								
									d10f5734fb
								
							
						
					
					
						commit
						0ebec74bed
					
				@ -16,6 +16,7 @@ public class Beans implements WebMvcConfigurer {
 | 
			
		||||
    @Override
 | 
			
		||||
    public void addInterceptors(InterceptorRegistry registry) {
 | 
			
		||||
        registry.addInterceptor(localeChangeInterceptor());
 | 
			
		||||
        registry.addInterceptor(new CleanUrlInterceptor());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Bean
 | 
			
		||||
 | 
			
		||||
@ -0,0 +1,44 @@
 | 
			
		||||
package stirling.software.SPDF.config;
 | 
			
		||||
import org.springframework.web.servlet.HandlerInterceptor;
 | 
			
		||||
import org.springframework.web.servlet.ModelAndView;
 | 
			
		||||
 | 
			
		||||
import jakarta.servlet.http.HttpServletResponse;
 | 
			
		||||
import jakarta.servlet.http.HttpServletRequest;
 | 
			
		||||
import java.util.regex.Matcher;
 | 
			
		||||
import java.util.regex.Pattern;
 | 
			
		||||
 | 
			
		||||
public class CleanUrlInterceptor implements HandlerInterceptor {
 | 
			
		||||
 | 
			
		||||
    private static final Pattern LANG_PATTERN = Pattern.compile("&?lang=([^&]+)");
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
 | 
			
		||||
        String queryString = request.getQueryString();
 | 
			
		||||
        if (queryString != null && !queryString.isEmpty()) {
 | 
			
		||||
            String requestURI = request.getRequestURI();
 | 
			
		||||
 | 
			
		||||
            // Keep the lang parameter if it exists
 | 
			
		||||
            Matcher langMatcher = LANG_PATTERN.matcher(queryString);
 | 
			
		||||
            String langQueryString = langMatcher.find() ? "lang=" + langMatcher.group(1) : "";
 | 
			
		||||
 | 
			
		||||
            // Check if there are any other query parameters besides the lang parameter
 | 
			
		||||
            String remainingQueryString = queryString.replaceAll(LANG_PATTERN.pattern(), "").replaceAll("&+", "&").replaceAll("^&|&$", "");
 | 
			
		||||
 | 
			
		||||
            if (!remainingQueryString.isEmpty()) {
 | 
			
		||||
                // Redirect to the URL without other query parameters
 | 
			
		||||
                String redirectUrl = requestURI + (langQueryString.isEmpty() ? "" : "?" + langQueryString);
 | 
			
		||||
                response.sendRedirect(redirectUrl);
 | 
			
		||||
                return false;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        return true;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) {
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@ -37,6 +37,8 @@ public class MergeController {
 | 
			
		||||
            for (PDPage page : pages) {
 | 
			
		||||
                mergedDoc.addPage(page);
 | 
			
		||||
            }
 | 
			
		||||
            
 | 
			
		||||
            
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // Return the merged document
 | 
			
		||||
@ -55,8 +57,16 @@ public class MergeController {
 | 
			
		||||
 | 
			
		||||
        PDDocument mergedDoc = mergeDocuments(documents);
 | 
			
		||||
 | 
			
		||||
        
 | 
			
		||||
        // Return the merged PDF as a response
 | 
			
		||||
        return PdfUtils.pdfDocToWebResponse(mergedDoc, files[0].getOriginalFilename().replaceFirst("[.][^.]+$", "") + "_merged.pdf");
 | 
			
		||||
        ResponseEntity<byte[]> response = PdfUtils.pdfDocToWebResponse(mergedDoc, files[0].getOriginalFilename().replaceFirst("[.][^.]+$", "") + "_merged.pdf");
 | 
			
		||||
        
 | 
			
		||||
        for (PDDocument doc : documents) {
 | 
			
		||||
            // Close the document after processing
 | 
			
		||||
            doc.close();
 | 
			
		||||
           }
 | 
			
		||||
        
 | 
			
		||||
        return response;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user