Обход постоянной переадресации 308

Я пытаюсь загрузить содержимое с URL-адреса с некоторым кодом vb .net.

      Dim httpClientHandler = New HttpClientHandler
With httpClientHandler
    .AllowAutoRedirect = True
End With
Using request = New HttpRequestMessage(HttpMethod.[Get], New Uri(url))
    request.Headers.TryAddWithoutValidation("Accept", "text/html,application/xhtml+xml,application/xml")
    request.Headers.TryAddWithoutValidation("Accept-Encoding", "gzip, deflate")
    request.Headers.TryAddWithoutValidation("user-agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36")
    request.Headers.TryAddWithoutValidation("connection", "keep-alive")
    request.Headers.TryAddWithoutValidation("Accept-Charset", "ISO-8859-1")
    Dim httpClient = New HttpClient(httpClientHandler)
    ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3 Or SecurityProtocolType.Tls12 Or SecurityProtocolType.Tls11 Or SecurityProtocolType.Tls

    Using response = Await httpClient.SendAsync(request).ConfigureAwait(False)
        response.EnsureSuccessStatusCode()

        Using responseStream = Await response.Content.ReadAsStreamAsync().ConfigureAwait(False)

            Using decompressedStream = New GZipStream(responseStream, CompressionMode.Decompress)

                Using streamReader = New StreamReader(decompressedStream)
                    Return Await streamReader.ReadToEndAsync().ConfigureAwait(False)
                End Using
            End Using
        End Using
    End Using
End Using

С недавнего времени это начало возвращать 308 — постоянный редирект. Я пытался добавить .AllowAutoRedirect, но это не помогло. Кроме того, я видел некоторые ответы, в которых предлагалось попытаться пропинговать URL-адрес в заголовке Location ответа, но в моем случае заголовок местоположения — это тот же URL-адрес, который я пытался пропинговать в первую очередь, так что это петля.

Есть ли способ обойти перенаправление 308 и как-то получить контент? В браузере URL-адрес работает нормально, как и ожидалось.

0 ответов

Другие вопросы по тегам