/ / Czy mogę zmienić nazwę pliku, gdy użytkownik zapisuje jako? HTML - asp.net, html, przepisywanie URL-a

Czy mogę zmienić nazwę pliku, gdy użytkownik zapisuje jako? HTML - asp.net, html, przepisywanie URL-a

Używam przepisywania URL i jeden z moich adresów URL to / blah / file ILLEGAL CHARS.jpg

NIELEGALNE POCZTY są nazwami niepoprawnymi w oknach takich jak * i mogą mylić serwery nawet po ucieczce np.? i /.

Wiem, że nadal nie mogę zapisać nazw plików jako / i? ale pewne postacie chciałbym przepuścić. Jak mogę podać nową nazwę pliku, gdy użytkownik kliknie prawym przyciskiem i wybierze opcję Zapisz jako?

Używam asp.net

Odpowiedzi:

3 dla odpowiedzi № 1

Dodanie nagłówka załącznika treści dodokument pozwoli ci określić alternatywną nazwę pliku. Będzie to miało dodatkowy efekt poboczny, polegający na monitowaniu użytkownika, aby automatycznie pobierał pliki, jeśli przejdą do tego pliku.

Response.AppendHeader("content-disposition", "attachment; filename="MyFile.jpg"");

2 dla odpowiedzi nr 2

Najłatwiej jest upewnić się, że adresy URL nie zawierają niedozwolonych znaków.

Jeśli używasz przepisywania adresów URL, powinieneś już mieć sposób na usuwanie / zastępowanie niedozwolonych znaków.

W przeciwnym razie przeglądarka odpowiada za pobranie adresu URL i wykrycie nazwy pliku, często z kiepskimi wynikami.