I am not aware of any built in feature that enables you to include an override file only for your plugin.
So I think you have to directly change the DefaultEngine.ini file of the current project.
To do this you could do the following:
(In a header file, with generated header included)
UCLASS(Config=Engine, PerObjectConfig)
class UConfigFake : public UObject
{
GENERATED_BODY()
public:
UPROPERTY(config)
float HttpThreadActiveFrameTimeInSeconds{ 0.00001 };
virtual void OverridePerObjectConfigSection(FString &SectionName) override
{
SectionName = TEXT("HTTP");
}
};
Then, whenever you want to write this value to the ini file, you need to execute the following code:
void WriteConfigProperties(const FString &iniFilePath)
{
auto *fakeConfig{ NewObject<UConfigFake>() };
fakeConfig->SaveConfig( CPF_Config, GetData( iniFilePath ) );
}
This will write the values of all UPROPERTY(config) members of the object instance into the ini file at iniFilePath, listing them under the section that is assigned inside OverridePerObjectConfigSection.
In your case, the call to WriteConfigProperties could look as following, if you want to output into the per project DefaultEngine.ini
WriteConfigProperties( FPaths::ProjectConfigDir() + TEXT("DefaultEngine.ini") );
For instance, you could do this for editor builds in a EngineSubsystem’s Initialize function (if you don’t need to support versions prior to 4.22, where Subsystems were added)
Please be aware that this solution ‘abuses’ the current behavior of the PerObjectConfig system, so it may break in future versions. Also, this is a very specialized solution I only suggest because this part of the http config seems not to be exposed to the project settings system. I think you should inform your plugin users about the fact that you set this property (e.g. via a log) or not override it in case its already set (look into UObject::LoadConfig for that).
I hope this helps or at least gives you some clues on how to continue.