Функция Azure с виртуальной сетью выдает исключение SocketException: запрошенный адрес недопустим в своем контексте - PullRequest
0 голосов
/ 14 декабря 2018

У меня есть функция Azure Durable, которая отправляет некоторый HTTP-запрос через VNet.Через некоторое время следующий метод вызывает исключение SocketException:

public async Task<(HttpStatusCode statusCode, string Content)> PostAsync(string uri ,string json)
    {
        if (string.IsNullOrEmpty(uri))
        {
            throw new ArgumentException("message", nameof(uri));
        }

        var client = new HttpClient
        {
            BaseAddress = new Uri(uri)
        };
        client.DefaultRequestHeaders.Accept.Clear();
        client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

        var content = new StringContent(json, Encoding.UTF8, "application/json");

        HttpResponseMessage  response = await client.PostAsync("", content);
        string responseContent = await response.Content.ReadAsStringAsync();
        return (response.StatusCode, responseContent);
    }

Запрошенный адрес недопустим в своем контексте

Это проблема VNet или как следуетЯ подхожу к этой проблеме?

1 Ответ

0 голосов
/ 22 декабря 2018

Эта ошибка выдается на уровне TCP.Быстрый поиск показывает, что чаще всего это происходит при попытке привязки к IP-адресу, который недопустим, например 0.0.0.0.Я бы начал с просмотра значения URI, которое вы используете, чтобы определить, соответствует ли оно тому, что вы ожидаете.

...