“Формат URI не мог быть определен” с WebRequest

Если вы используете VCS, такой как SVN или GIT, вы можете просто воссоздать файл с тем же именем и в том же месте, что достаточно.

11
задан Ólafur Waage 25 May 2009 в 14:29
поделиться

2 ответа

Вы должны кодировать только аргумент, а не весь URL-адрес, поэтому попробуйте:

string url = "http://www.stackoverflow.com?question=" + HttpUtility.UrlEncode("a sentence with spaces");

WebRequest r = WebRequest.Create(url);
r.Method = "POST";
r.ContentLength = encoded.Length;
WebResponse response = r.GetResponse();

Кодирование всего URL-адреса будет означать: // и? тоже закодированы. Закодированная строка больше не является действительным URL.

16
ответ дан 3 December 2019 в 07:14
поделиться

UrlEncode следует использовать только в строке запроса. Попробуйте следующее:

string query = "a sentence with spaces";
string encoded = "http://www.stackoverflow.com/?question=" + HttpUtility.UrlEncode(query);

Текущая версия вашего кода кодирует косую черту и двоеточие в URL, что сбивает с толку веб-запрос.

1
ответ дан 3 December 2019 в 07:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: