Я запутался, как определяется Human Readable Text
. Я предполагаю, что поскольку Unicode содержит почти все символы языка, то, пока в нем есть codePoint, он доступен для чтения.
Но в HttpLoggingInterceptor # isPlaintext (buffer) :
static boolean isPlaintext(Buffer buffer) {
try {
Buffer prefix = new Buffer();
long byteCount = buffer.size() < 64 ? buffer.size() : 64;
buffer.copyTo(prefix, 0, byteCount);
for (int i = 0; i < 16; i++) {
if (prefix.exhausted()) {
break;
}
int codePoint = prefix.readUtf8CodePoint();
if (Character.isISOControl(codePoint) && !Character.isWhitespace(codePoint)) {
return false;
}
}
return true;
} catch (EOFException e) {
return false; // Truncated UTF-8 sequence.
}
}
Это показывает, что байты не читаются, если они содержат не белые символы управления пробелом.
В чем причина этого? Спасибо.