Класс .net Uri не поддерживает URL длиной более 263 символов - PullRequest
0 голосов
/ 07 мая 2018

AFAIK должно поддерживаться все до 2000 символов.

Размножение:

var s = "http://www."
+ string.Join("", Enumerable.Repeat("a", 249))
+ ".com";

new Uri(s, UriKind.Absolute);

Одна буква короче анализируется без проблем:

var s = "http://www."
+ string.Join("", Enumerable.Repeat("a", 248))
+ ".com";

Код класса Uri был создан в 2003 году и перенесен в .net standard / core. MS все еще утверждает, что 255 символов для пути / URI достаточно для всех?

1 Ответ

0 голосов
/ 07 мая 2018

Вы пытаетесь создать Uri с именем хоста длиной более 255 символов. 255 - это максимум .

Это также отражено в сообщении об исключении:

Неверный URI: не удалось проанализировать имя хоста.

Так что этот не виноват в Microsoft.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...