2010-04-29 6 views
7

यहाँ अनुरोध और प्रतिक्रिया हेडरजब एक पीडीएफ डाउनलोड करने के लिए शीर्षलेख भेजने, सफारी संलग्न कर देता है .html

http://www.example.com/get/pdf 

GET /~get/pdf HTTP/1.1 
Host: www.example.com 
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3 
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 
Accept-Language: en-us,en;q=0.5 
Accept-Encoding: gzip,deflate 
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 
Keep-Alive: 115 
Connection: keep-alive 
Referer: http://www.example.com 
Cookie: etc 

HTTP/1.1 200 OK 
Date: Thu, 29 Apr 2010 02:20:43 GMT 
Server: Apache/2.2.14 (Unix) mod_ssl/2.2.14 OpenSSL/0.9.8i DAV/2 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 
X-Powered-By: Me 
Expires: Thu, 19 Nov 1981 08:52:00 GMT 
Pragma: no-cache 
Cache-Control: private 
Content-Disposition: attachment; filename="File #1.pdf" 
Content-Length: 18776 
Keep-Alive: timeout=5, max=100 
Connection: Keep-Alive 
Content-Type: text/html; charset=utf-8 
---------------------------------------------------------- 

मूल रूप से, प्रतिक्रिया हेडर DOMPDF के stream() विधि द्वारा भेजे जाते हैं है।

फ़ायरफ़ॉक्स में, फ़ाइल को File #1.pdf के रूप में संकेत दिया जाता है। हालांकि, सफारी में, फ़ाइल File #1.pdf.html के रूप में सहेजी गई है।

क्या कोई जानता है कि सफारी फ़ाइल नाम में HTML एक्सटेंशन क्यों जोड़ रहा है?

मैं कोहाना 3 का भी उपयोग कर रहा हूं, जो नियंत्रक विधि से पीडीएफ की सेवा करता है।

+2

क्या यह सामग्री-प्रकार से संबंधित पाठ/HTML पर सेट किया जा सकता है? – Kitsune

उत्तर

10

जो मैं सामग्री प्रकार को देखता हूं उससे गलत है, मुझे विश्वास है कि यह तय है, तो आपकी समस्या हल हो जाएगी।

+1

पूरी तरह से याद किया! मुझे लगता है कि मैं इसे 'एप्लिकेशन/पीडीएफ' पर सेट कर दूंगा। – alex

+0

yup, मुझे लगता है कि समस्या को हल करना चाहिए –

2

क्योंकि आप इसे बता रहे हैं कि यह HTML है। अपने एमआईएम प्रकार को ठीक करें।

Content-Type: text/html; charset=utf-8 
2

आप बदल सकते हैं कैसे Kohana 3 तो जैसे हेडर भेजता है ...

$this->request->headers['Content-Type'] = File::mime($file); 
1

मैं मरने को जोड़कर यह ठीक करने के बाद(); स्ट्रीमिंग के बाद

$dompdf = new DOMPDF(); 
$dompdf->set_paper("a4", "portrait"); 
$dompdf->load_html($html); 
$dompdf->render(); 
$dompdf->stream($invoice.".pdf"); 
die(); 
+0

यह लैरावेल 4.2 के साथ लीग \ सीएसवी लाइब्रेरी का उपयोग करके मेरे लिए काम किया। '$ Csv-> आउटपुट (' file.csv ') को कॉल करने के बाद अपरिवर्तनीय शीर्षलेख जोड़े या बदल दिए जाते हैं;', सफारी को भ्रमित करते हुए। आउटपुट कॉल करने के बाद बस 'मरें' जोड़ें। –

संबंधित मुद्दे