I had to stop using ModernHttpClient because I discovered that the timeout I set on my HttpClient (which is greater than 60 seconds) is not applied to the native NSUrlSession / OkHttp request. It appears that ModernHttpClient is using the default 60 second timeout, which is sadly not sufficient for my application, whose server experiences intermittent performance issues but still eventually responds.
It would be nice if a timeout could either be passed into the NativeMessageHandler() constructor, or if the timeout could be plucked off the HttpClient and applied to the native handler.