Используя консоль API, я получаю, что эта строка работает правильно:
GET https://www.googleapis.com/youtube/v3/search?part=snippet&channelId=UCGaweJW8AnsV2ogktwOaWhQ&maxResults=50&order=date&publishedAfter=2019-01-01T00%3A00%3A00Z&publishedBefore=2019-03-01T00%3A00%3A00Z&type=video&key={YOUR_API_KEY}
как вы могли видеть, опубликованные после и опубликованные, прежде чем кодируются в URL и имеют вид ГГГГ-ММ-ДДчч: мм: ссЗ
При использовании класса com.google.api.services.youtube.Youtube доступны следующие методы:
public List setPublishedAfter(com.google.api.client.util.DateTime publishedAfter) { this.publishedAfter = publishedAfter; return this; }
и
public List setPublishedBefore(com.google.api.client.util.DateTime publishedBefore) { this.publishedBefore = publishedBefore; return this; }
Они принимают DateTime, а не String, и полученная строка urlString:
https://www.googleapis.com/youtube/v3/search?channelId=UCGaweJW8AnsV2ogktwOaWhQ&maxResults=25&order=date&pageToken&part=snippet&publishedAfter=2019-03-01T00:00:00.000Z&publishedBefore=2019-01-01T00:00:00.000Z&type=video&videoEmbeddable=true
где опубликовано До и опубликовано после не закодировано и в формате:
YYYY-MM-DDThh: мм: сс ** mmmZ **
и это не работает, опубликовано после и опубликовано до того, как проигнорировано.
Кто-то заставил это работать? Как?
Заранее спасибо.
Marco