wizard: write key files as UTF-8 (no BOM)
FFileHelper::SaveStringToFile defaults to an encoding Node can't always parse; force UTF-8 without BOM for auth.env and integrations.json so the gateway reads them correctly. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@ -273,7 +273,8 @@ FReply SMCPWizard::OnSaveElevenLabsKey()
|
|||||||
FString Out;
|
FString Out;
|
||||||
TSharedRef<TJsonWriter<TCHAR, TPrettyJsonPrintPolicy<TCHAR>>> Writer = TJsonWriterFactory<TCHAR, TPrettyJsonPrintPolicy<TCHAR>>::Create(&Out);
|
TSharedRef<TJsonWriter<TCHAR, TPrettyJsonPrintPolicy<TCHAR>>> Writer = TJsonWriterFactory<TCHAR, TPrettyJsonPrintPolicy<TCHAR>>::Create(&Out);
|
||||||
const bool bSer = FJsonSerializer::Serialize(Root.ToSharedRef(), Writer);
|
const bool bSer = FJsonSerializer::Serialize(Root.ToSharedRef(), Writer);
|
||||||
const bool bOk = bSer && FFileHelper::SaveStringToFile(Out, *File);
|
// UTF-8 (no BOM) so Node's JSON.parse can read it back.
|
||||||
|
const bool bOk = bSer && FFileHelper::SaveStringToFile(Out, *File, FFileHelper::EEncodingOptions::ForceUTF8WithoutBOM);
|
||||||
Notify(bOk
|
Notify(bOk
|
||||||
? FText::Format(LOCTEXT("ElevenSaved", "Saved to {0}"), FText::FromString(File))
|
? FText::Format(LOCTEXT("ElevenSaved", "Saved to {0}"), FText::FromString(File))
|
||||||
: LOCTEXT("ElevenSaveFail", "Could not write integrations.json"), bOk);
|
: LOCTEXT("ElevenSaveFail", "Could not write integrations.json"), bOk);
|
||||||
@ -430,7 +431,7 @@ bool SMCPWizard::UpsertEnvVar(const FString& FilePath, const FString& Key, const
|
|||||||
Lines.Pop();
|
Lines.Pop();
|
||||||
}
|
}
|
||||||
const FString Out = FString::Join(Lines, TEXT("\n")) + TEXT("\n");
|
const FString Out = FString::Join(Lines, TEXT("\n")) + TEXT("\n");
|
||||||
return FFileHelper::SaveStringToFile(Out, *FilePath);
|
return FFileHelper::SaveStringToFile(Out, *FilePath, FFileHelper::EEncodingOptions::ForceUTF8WithoutBOM);
|
||||||
}
|
}
|
||||||
|
|
||||||
#undef LOCTEXT_NAMESPACE
|
#undef LOCTEXT_NAMESPACE
|
||||||
|
|||||||
Reference in New Issue
Block a user