Проблема
есть такой код по преобраpованию ссылки
var uriBuilder = new UriBuilder(absoluteUri);
//(код модифицирующий url с помощью механизмов UriBuilder)
...
uriBuilder.ToString()
uriBuilder.ToString() генерирует ссылку с явным указанием порта, даже если порта во входной строке не было
Пример
вход: https://a.b.com/test
выход:https://a.b.com:443/test
Что помогло
СтатьяHow to remove the port number from a url string
https://stackoverflow.com/questions/2819336/how-to-remove-the-port-number-from-a-url-string
Решение
написал такой вспомогательный методprivate static string GetUriBuilderAsStringWithoutDefaultPort(UriBuilder uriBuilder)
{
if (uriBuilder.Uri.IsDefaultPort) uriBuilder.Port = -1;
return uriBuilder.ToString();
}
и теперь вместо UriBuilder.ToString() вызваю GetUriBuilderAsStringWithoutDefaultPort(uriBuilder)
Комментариев нет:
Отправить комментарий