Articles
HTTP-rubrik trasig? Webbläsare öppnar ' t öppna vår pdf, men öppnar alla andra pdfs [stängda]
On november 30, 2020 by admin <åt sidan class = " s-meddelande s-meddelande__info js-post-meddelande mb16 "role =" status ">
Stängd. Denna fråga är av -tema . För närvarande accepteras inte svar.
Kommentarer
- Du kanske vill lägga till dina skickade rubriker. Detta är bara gissning. Detta hör också till stackoverflow.com, inte här 🙂
- Jag ' Jag migrerar inte detta till StackOverflow, det ser lämpligt ut här. Det är inte ' t nödvändigtvis en kodningsfråga, men det är verkligen en webbansvarigfråga.
- Jag tror att du inte ' t behöver konvertera i din inputStream till charset = UTF-8 " för PDF
- I ' m röstning för att stänga den här frågan som off-topic eftersom den berodde på fel konfiguration av servern.
- Det ser ut att vara utanför ämnet eftersom det kräver att vi gissar vad som kan vara fel. Det finns ' inget konkret för oss att arbeta med.
Svar
Se Hur tvingas filer att öppnas i webbläsaren istället för att ladda ner (pdf)? som har svar från ColinM som berättar exakt vad rubrikerna ska vara:
Att visa för webbläsaren att filen ska visas i webbläsaren :
Content-Type: application/pdf Content-Disposition: inline; filename="filename.pdf"
För att hämta filen istället för att se den:
Content-Type: application/pdf Content-Disposition: attachment; filename="filename.pdf"
EDIT: Citaten runt filnamnet krävs om filnamnet innehåller specialtecken som
filename[1].pdf
som annars kan bryta webbläsarens förmåga att hantera svaret.
Kommentarer
- Tack för det här mycket fina svaret. Men jag måste acceptera min egen mer speciella, för den löste mitt problem.
Answe r
Lösningen var ganska speciell.
Servern hade standard mime-typ application/octet-stream
för PDF-filer. Efter att ha ändrat detta till application/pdf
fungerade allt bra.
I lighttpd-konfigurationen uppnådde jag ändringen genom att lägga till denna definition:
mimetype.assign += ( ".pdf" => "application/pdf" )
Lämna ett svar