में सामग्री-स्वभाव को अनदेखा किया जा रहा है, मैं गतिशील रूप से इनलाइन पीडीएफ बनाने की कोशिश कर रहा हूं, जब उपयोगकर्ता इसे सहेजने का विकल्प चुनता है, तो मेरे कस्टम फ़ाइल नाम से संकेत मिलता है। the documentation के अनुसार, saveasname
विशेषता मुझे जो चाहिए वह करना चाहिए।आईई 9 और फ़ायरफ़ॉक्स 13
(प्रारूप = "पीडीएफ" केवल) फ़ाइल नाम जो SaveAs संवाद में प्रकट होता है जब कोई उपयोगकर्ता ब्राउज़र पर लिखी गई पीडीएफ फाइल सहेजता है।
हालांकि, आईई 9 और फ़ायरफ़ॉक्स 13.0.1 दोनों में क्या हो रहा है यह है कि SaveAs संवाद में दिखाई देने वाला फ़ाइल नाम मेरे सीएफ टेम्पलेट के समान है, लेकिन पीडीएफ एक्सटेंशन के साथ। (दूसरे शब्दों में, मेरा कोड makepdf.cfm
में है और SaveAs मुझे makepdf.pdf
सहेजने के लिए संकेत देता है।) क्रोम में, हालांकि, यह पूरी तरह से काम करता है।
<cfdocument format="pdf" bookmark="true" saveasname="MyReport.pdf">
अगर मैं स्पष्ट रूप से सामग्री स्वभाव और सामग्री प्रकार का ऐलान करते हैं तो
<cfheader name="Content-Disposition" value="inline; filename=MyReport.pdf">
<cfcontent type="application/x-pdf">
<cfdocument format="pdf" bookmark="true" saveasname="MyReport.pdf">
- क्रोम की तरह: (सभी विंडोज 7 पर)
यहाँ पीडीएफ बनाने के लिए मेरी कोड है मुझे बताता है कि "सामग्री-विस्थापन" को दो बार घोषित किया गया है
- फ़ायरफ़ॉक्स मुझे बताता है कि पीडीएफ फाइल दूषित है
- आईई बस इसे अनदेखा कर देता है (और अब भी सही फ़ाइल नाम प्रदर्शित नहीं करता है)
अगर मैं सिर्फ हैडर
<cfheader name="Content-Disposition" value="inline; filename=MyReport.pdf">
<cfcontent type="application/x-pdf">
<cfdocument format="pdf" bookmark="true">
पर भरोसा करते हैं मैं कोड के पहले टुकड़ा के रूप में ही व्यवहार मिलता है।
मुझे पता है कि ब्राउज़र को इनलाइन प्रदर्शित करने के बजाए डाउनलोड करने के लिए कैसे संकेत मिलता है, और सबकुछ अपेक्षित काम करता है, लेकिन यह वांछित व्यवहार नहीं है।
मुझे फ़ाइल नामों में समय और तिथियों का उपयोग करने की आवश्यकता है और अंतिम उपयोगकर्ता अपनी फ़ाइलों को ओवरराइट करने से बचाने के लिए पर्याप्त समझदार नहीं हैं (उन्हें उन्हें सहेजना चुनना चाहिए)।
क्या ऐसा कुछ है जो मुझे याद आ रहा है जो आईई और फ़ायरफ़ॉक्स को वह करने के लिए मिलेगा जो उन्हें माना जाता है? यह करने के लिए अन्य ब्राउज़र क्या करने जा रहे हैं? मोबाइल सफारी?
यूआरएल फिर से लेखन इस विशेष परियोजना के लिए एक विकल्प नहीं है, लेकिन यह भविष्य के लिए है करने के लिए कुछ अच्छी जानकारी है। – ale
बाहर निकलता है आपको यूआरएल रीराइटिंग की आवश्यकता नहीं है - बस स्लैश जोड़ना और स्क्रिप्ट यूआरएल में आपके चुने हुए फ़ाइल नाम पर्याप्त हैं। अद्यतन उत्तर देखें। – CfSimplicity