Почему этот фрагмент Java все еще кэширует результаты, используя Java Kit для Prismic?
Я использую java-kit 2.0.0
public static void main(String[] args) throws Exception {
Api api = Api.get("https://xxxx.prismic.io/api","MY SECRET ACCESS KEY",
new Cache.NoCache(), new Logger.NoLogger());
while (true) {
Document d = api.getByID("Wl3k_CkAAKG2yHTV");
String h = d.getStructuredText("post.post_body").asHtml(null);
System.out.println(h);
Thread.sleep(2000);
}
}
Я запускаю эту программу и вижу ожидаемый результат в соответствии с условиями в письменном зале для этого фрагмента содержимого, напечатанного на Stdout. Все идет нормально. Затем я иду и изменяю содержимое в комнате для писем, сохраняю и публикую его. Однако приведенный выше код по-прежнему печатает старую версию - как если бы она была кэширована в объекте Api. Изучая исходный код java-kit, я определил, что действительно, передача в Cache.NoCache конструктору Api должна означать, что в работе нет кэша, и каждый запрос api.getByID должен отправляться в Prismic для сбора свежих данных.
Если я перемещаю декларацию Api в цикле while, все работает как положено, и я вижу, что измененный контент проходит через. Это то, что мы должны ожидать, поскольку кэш Api каждый раз переинициализируется.
Я что-то здесь упускаю или это действительно ошибка?