Загрузка файла github raw с помощью FileUtils.copyURLtoFile с токеном доступа - PullRequest
0 голосов
/ 03 февраля 2020

Я не могу загрузить файл (IOException) с Apache commons-io 2.6 FileUtils.copyURLtoFile, передав https://<token>@raw.githubusercontent.com/<organization>/<repo>/<branch>/file.

Токен имеет репо доступ.

Я могу загрузить файл, если использую код, подобный следующему, для передачи токена в заголовок авторизации:

try(CloseableHttpClient httpClient = HttpClients.createDefault())
{
    HttpGet httpGet = new HttpGet( url.toString() );
    httpGet.setHeader( "Authorization", String.format( "token %s", "<token>" ) );
    httpGet.setHeader( "Accept", "application/vnd.github.v3.raw" );
    try ( CloseableHttpResponse httpResponse = httpClient.execute( httpGet ) )
    {
        HttpEntity entity = httpResponse.getEntity();

        if ( entity != null )
        {
            FileUtils.copyInputStreamToFile( entity.getContent(), file );
        }
    }
}

И я указываю https://raw.githubusercontent.com/<organization>/<repo>/<branch>/file в качестве URL-адреса. Итак, я знаю, что токен правильно настроен.

Есть идеи?

Примечание: использование curl -s https://$TOKEN@raw.githubusercontent.com/.... работает.

...