В ASP.NET, почему есть UrlEncode () И UrlPathEncode ()?
В недавнем проекте я имел удовольствие устранять ошибку, из-за которой изображения не загружались, когда в имени файла были пробелы. Я подумал: "Какой простой вопрос, я будуUrlEncode()
это! ", но, нет! просто с помощьюUrlEncode()
не решил проблему.
Новая проблема былаHttpUtilities.UrlEncode()
метод переключаемых пробелов () к плюсам (
+
) вместо из%20
как хотел браузер. Такfile+image+name.jpg
вернется не найденfile%20image%20name.jpg
был найден правильно.
К счастью, коллега указалHttpUtilities.UrlPathEncode()
для меня, который использует%20
для пробелов вместо+
.
ПОЧЕМУ есть два способа обработки Url-кодирования? ПОЧЕМУ есть две команды, которые ведут себя так по-разному?