url
This commit is contained in:
@@ -174,7 +174,8 @@ export async function POST(req: NextRequest) {
|
||||
console.log("🔍 Appel à Presidio Analyzer...");
|
||||
|
||||
// ✅ Définir l'URL AVANT de l'utiliser
|
||||
const presidioAnalyzerUrl = "http://localhost:5001/analyze";
|
||||
const presidioAnalyzerUrl =
|
||||
"http://analyzer.151.80.20.211.sslip.io/analyze";
|
||||
|
||||
try {
|
||||
const analyzeResponse = await fetch(presidioAnalyzerUrl, {
|
||||
@@ -211,7 +212,8 @@ export async function POST(req: NextRequest) {
|
||||
};
|
||||
|
||||
console.log("🔍 Appel à Presidio Anonymizer...");
|
||||
const presidioAnonymizerUrl = "http://localhost:5001/anonymize";
|
||||
const presidioAnonymizerUrl =
|
||||
"http://analyzer.151.80.20.211.sslip.io/anonymize";
|
||||
|
||||
const anonymizeResponse = await fetch(presidioAnonymizerUrl, {
|
||||
method: "POST",
|
||||
@@ -241,58 +243,74 @@ export async function POST(req: NextRequest) {
|
||||
end: number;
|
||||
score: number;
|
||||
}
|
||||
|
||||
|
||||
// Puis modifier la fonction
|
||||
const extractReplacementValues = (originalText: string, anonymizedText: string, analyzerResults: AnalyzerResult[]) => {
|
||||
const extractReplacementValues = (
|
||||
originalText: string,
|
||||
anonymizedText: string,
|
||||
analyzerResults: AnalyzerResult[]
|
||||
) => {
|
||||
const replacementMap: Record<string, string> = {};
|
||||
|
||||
|
||||
// Créer une copie du texte anonymisé pour le traitement
|
||||
const workingText = anonymizedText; // ✅ Changé de 'let' à 'const'
|
||||
// Supprimer workingOriginal car elle n'est jamais utilisée
|
||||
|
||||
|
||||
// Trier les résultats par position (du plus grand au plus petit pour éviter les décalages)
|
||||
const sortedResults = [...analyzerResults].sort((a, b) => b.start - a.start);
|
||||
|
||||
const sortedResults = [...analyzerResults].sort(
|
||||
(a, b) => b.start - a.start
|
||||
);
|
||||
|
||||
for (const result of sortedResults) {
|
||||
const originalValue = originalText.substring(result.start, result.end);
|
||||
|
||||
const originalValue = originalText.substring(
|
||||
result.start,
|
||||
result.end
|
||||
);
|
||||
|
||||
// Extraire les parties avant et après l'entité dans le texte original
|
||||
const beforeOriginal = originalText.substring(0, result.start);
|
||||
const afterOriginal = originalText.substring(result.end);
|
||||
|
||||
|
||||
// Trouver les mêmes parties dans le texte anonymisé
|
||||
const beforeIndex = workingText.indexOf(beforeOriginal);
|
||||
const afterIndex = workingText.lastIndexOf(afterOriginal);
|
||||
|
||||
|
||||
if (beforeIndex !== -1 && afterIndex !== -1) {
|
||||
// Extraire la valeur de remplacement entre ces deux parties
|
||||
const startPos = beforeIndex + beforeOriginal.length;
|
||||
const endPos = afterIndex;
|
||||
const replacementValue = workingText.substring(startPos, endPos);
|
||||
|
||||
|
||||
// Vérifier que c'est bien un remplacement (commence par [ et finit par ])
|
||||
if (replacementValue.startsWith('[') && replacementValue.endsWith(']')) {
|
||||
if (
|
||||
replacementValue.startsWith("[") &&
|
||||
replacementValue.endsWith("]")
|
||||
) {
|
||||
replacementMap[originalValue] = replacementValue;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return replacementMap;
|
||||
};
|
||||
|
||||
const replacementValues = extractReplacementValues(fileContent, anonymizerResult.anonymized_text, analyzerResults);
|
||||
|
||||
|
||||
const replacementValues = extractReplacementValues(
|
||||
fileContent,
|
||||
anonymizerResult.anonymized_text,
|
||||
analyzerResults
|
||||
);
|
||||
|
||||
// 🔍 AJOUT D'UN LOG POUR DÉBOGUER
|
||||
console.log("🔧 Valeurs de remplacement extraites:", replacementValues);
|
||||
|
||||
|
||||
const result = {
|
||||
text: fileContent,
|
||||
anonymizedText: anonymizerResult.anonymized_text,
|
||||
piiCount: analyzerResults.length,
|
||||
analyzerResults: analyzerResults,
|
||||
replacementValues: replacementValues // Utiliser les nouvelles valeurs
|
||||
replacementValues: replacementValues, // Utiliser les nouvelles valeurs
|
||||
};
|
||||
|
||||
|
||||
return NextResponse.json(result, { status: 200 });
|
||||
} catch (presidioError) {
|
||||
console.error("❌ Erreur Presidio:", presidioError);
|
||||
|
||||
Reference in New Issue
Block a user