Функция таймера Azure V2 не работает с прогрессом httpclient при перенаправлении в ответ 302 - PullRequest
0 голосов
/ 12 октября 2018

Я пытаюсь HTTP GET файл и добавил обработчик прогресса, чтобы увидеть прогресс, так как файл довольно большой, но я не могу заставить это работать, кажется, что это не триггер при загрузке байтов.

Что я делаю не так?

ПРИМЕЧАНИЕ, это Azure V2 Timer Function

namespace NWPimDataFeeder
{
   public static class PimDataFeeder
  {
    [FunctionName("PimDataFeeder")]
    public static async System.Threading.Tasks.Task RunAsync([TimerTrigger("0 */5 * * * *")]TimerInfo myTimer, TraceWriter log)
{
    log.Info($"C# Timer trigger function executed at: {DateTime.Now}");

    var processMsgHander = new ProgressMessageHandler(new HttpClientHandler());
    processMsgHander.HttpSendProgress += (sender, e) =>
    {
        //add your codes base on e.BytesTransferred and e.ProgressPercentage
    };

     processMsgHander.HttpReceiveProgress += (sender, e) =>
    {
        log.Info(e.BytesTransferred.ToString());
    };

    using (HttpClient client = new HttpClient(processMsgHander))
    {
        log.Info($"C# Timer trigger function in the using executed at: {DateTime.Now}");
        HttpResponseMessage file = await client.GetAsync("https://example.com/api/blaha");
        var JsonLineFile = await file.Content.ReadAsStringAsync();
        log.Info(JsonLineFile);
      } 
    }
  }
}

--- EDIT --- Код работает нормально, если файл доступен в оригиналеместоположение, но мой ответ - редирект 302, и по какой-то причине он не выполняется, поэтому моя переменная содержит HTML-содержимое HTML-страницы перенаправления в отличие от целевого содержимого после перенаправления, как я могу это исправить?

...