के साथ त्रुटि मैं एएसपी.NET 2.0 में ब्राउज़र में एक पीडीएफ स्ट्रीम कर रहा हूं। यह एचटीटीपीएस पर आईई को छोड़कर HTTP और सभी ब्राउज़रों पर सभी ब्राउज़रों में काम करता है। जहां तक मुझे पता है, यह आईई के सभी संस्करणों में काम करता है (पिछले 5 वर्षों में या तो), लेकिन हमारे ग्राहकों ने हाल ही में मुद्दों की रिपोर्ट करना शुरू कर दिया है। मुझे संदेह है कि एन्क्रिप्टेड पृष्ठों को डिस्क सुरक्षा विकल्प को डिफ़ॉल्ट रूप से अक्षम करने के लिए उपयोग न करें और कुछ बिंदु पर डिफ़ॉल्ट रूप से सक्षम हो गया (इंटरनेट विकल्प -> उन्नत -> सुरक्षा)। इस विकल्प को बंद करने से काम के आसपास के रूप में मदद मिलती है, लेकिन दीर्घकालिक समाधान के रूप में व्यवहार्य नहीं है।पीडीएफ जेनरेट करना, आईई और एचटीटीपीएस
मैं प्राप्त कर रहा त्रुटि संदेश है:
इंटरनेट एक्सप्लोरर www.sitename.com से OutputReport.aspx डाउनलोड नहीं कर सकते।
इंटरनेट एक्सप्लोरर इस इंटरनेट साइट को खोलने में सक्षम नहीं था। अनुरोधित साइट या तो अनुपलब्ध है या नहीं मिल सकती है। बाद में पुन: प्रयास करें।
पीडीएफ बनाने के लिए उपयोग किया जाने वाला टूल DataDynamics से ActiveReports है।
Response.ClearContent()
Response.ClearHeaders()
Response.AddHeader("cache-control", "max-age=1")
Response.ContentType = "application/pdf"
Response.AddHeader("content-disposition", "attachment; filename=statement.pdf")
Response.AddHeader("content-length", mem_stream.Length.ToString)
Response.BinaryWrite(mem_stream.ToArray())
Response.Flush()
Response.End()
नोट:: एक बार पीडीएफ बनाई गई है, यहाँ इसे नीचे भेजने के लिए कोड है मैं स्पष्ट रूप से कैश-नियंत्रण निर्दिष्ट नहीं करते हैं तो नेट मेरी ओर से कोई कैश भेजता है, तो मैं स्थापित करने की कोशिश की है कैश-कंट्रोल: निजी या सार्वजनिक या अधिकतम = #, लेकिन उनमें से कोई भी काम नहीं कर रहा है।
यहां मोड़ है: जब मैं प्रतिक्रिया शीर्षकों का निरीक्षण करने के लिए फिडलर चलाता हूं, तो सब कुछ ठीक काम करता है। हेडर मैं प्राप्त होने वाले हैं:
HTTP/1.1 200 ठीक
कैश-नियंत्रण: अधिकतम उम्र = 1
दिनांक: बुध, 29 जुलाई 2009 17:57:58 GMT
सामग्री प्रकार: आवेदन/पीडीएफ
सर्वर: माइक्रोसॉफ्ट आईआईएस/6.0
MicrosoftOfficeWebServer: 5.0_Pub
एक्स संचालित-द्वारा: ASP.NET
एक्स ASPNET-संस्करण: 2.0.50727
सामग्री-स्वभाव: लगाव; फ़ाइल नाम = statement.pdf
सामग्री-एंकोडिंग: gzip
Vary: Accept-एन्कोडिंग
स्थानांतरण-एन्कोडिंग:
chunked जैसे ही मैंने फ़िडलर बंद कर देते हैं और फिर कोशिश करें, यह फिर से विफल रहता है। एक अन्य बात जो मैंने देखी है वह यह है कि जब फिडलर चल रहा है तो मुझे मिलती है इस वेबसाइट के सुरक्षा प्रमाणपत्र चेतावनी संदेश में कोई समस्या है, और मुझे पर क्लिक करना होगा इस वेबसाइट पर जारी रखें (अनुशंसित नहीं) से गुज़रने के लिए। जब फिडलर बंद हो जाता है, तो मुझे इस सुरक्षा चेतावनी का सामना नहीं होता है और यह तुरंत विफल हो जाता है।
मुझे लगता है कि फिडलर और ब्राउज़र के बीच क्या हो रहा है, इसलिए यह काम करता है कि जब फिडलर चल रहा है तो यह काम करता है लेकिन जब यह नहीं होता है तो ब्रेक होता है, लेकिन सबसे महत्वपूर्ण बात यह है कि किसी के पास कोई विचार है कि मैं अपना कोड कैसे बदल सकता हूं ताकि आईई में पीडीएफ स्ट्रीमिंग हो सके। क्लाइंट मशीन में बदलाव किए बिना काम करें?
अपडेट: फिडलर के मुद्दों का समाधान किया गया है, बहुत बहुत धन्यवाद, अब यह लगातार काम करता है (टूटा हुआ, फिडलर के साथ या बिना)।
Google खोज के आधार पर, पूरे वेब पर इस समस्या के बारे में बहुत सारी रिपोर्टें प्रतीत होती हैं, जिनमें प्रत्येक प्रतिक्रिया प्रतिक्रिया शीर्षकों का स्वयं का विशिष्ट संयोजन होता है जो उनके व्यक्तिगत मामलों के लिए समस्या को ठीक करने लगते हैं। मैंने इन सुझावों में से कई को आजमाया है, जिसमें ईटाग, लास्टमोडिफाइड डेट, वेरी हेडर (फिडलर का उपयोग करके) और कैश-कंट्रोल और/या प्रगा हेडर के संयोजन के दर्जनों को शामिल करने सहित कई सुझावों का प्रयास किया है। मैंने ContentType के लिए "सामग्री-स्थानांतरण-एन्कोडिंग: बाइनरी" के साथ-साथ "एप्लिकेशन/बल-डाउनलोड" की कोशिश की। अब तक कुछ भी मदद नहीं मिली है। fewMicrosoftKBarticles हैं, जिनमें से सभी संकेत देते हैं कि कैश-कंट्रोल: नो-कैश अपराधी है। कोई अन्य विचार?
अपडेट: वैसे, पूर्णता के लिए, यह वही समस्या एक्सेल और वर्ड आउटपुट के साथ भी होती है।
अद्यतन: कोई प्रगति नहीं हुई है। मैंने फिडलर से एरिकला तक एसएजेड फ़ाइल को ईमेल किया और वह आईई डीबग करते समय समस्या को पुन: उत्पन्न करने में सक्षम था, लेकिन अभी तक कोई समाधान नहीं है। बाउंटी की समयसीमा समाप्त हो जाएगी ...
आईई 6, आई 7 और आईई 8 सभी प्रभावित हैं। – wweicker