मैं चाहता हूं कि क्लाइंट एक बटन पर क्लिक करते समय मेरे डीबी पर संग्रहीत फाइल डाउनलोड करे। मैं यह AJAX अनुरोध भेजता हूं और इसे सर्वर की ओर से ले जाता हूं।एक्स्टजेस अजाक्स फ़ाइल डाउनलोड अनुरोध सी # एमवीसी
ExtJS:
downloadFile: function (a, b, c) {
var feed_id =this.getMyfeedwindow().down('form').getComponent('FeedId').text;
Ext.Ajax.request({
url: '/Feed/Download',
method: 'GET',
params: {
fileID: feed_id, //this.form.getComponent('file').value,
},
failure: function (response) {
alert('failed !');
},
success: function (response) {
alert('success!');
},
});
},
तो यह कोड ब्लॉक के साथ अनुरोध को पूरा।
सी #:
public void Download(string fileID){
Response.ContentType = "application/force-download";
Response.AddHeader("Content-Disposition", "attachment; Filename=\"Logo1.jpg\"");
Response.BinaryWrite(data);
Response.End();
}
जब मैं फ़ायरबग के साथ नेटवर्क की जाँच की, यह मेरे अनुरोध इन मानकों के साथ सफलतापूर्वक रिटर्न लगता है।
Cache-Control private
Content-Disposition attachment; filename="Logo1.jpg"
Content-Type application/force-download
Date Wed, 09 Jan 2013 12:51:54 GMT
Server Microsoft-IIS/8.0
Transfer-Encoding chunked
X-AspNet-Version 4.0.30319
X-AspNetMvc-Version 4.0
X-Powered-By ASP.NET
X-SourceFiles =?UTF-8?B?RTpcVXRrdUNhblxQcm9qZWN0c1xURlNcQlRPTVxCVE9NXEZlZWRcRG93bmxvYWQ=?=
हालांकि यह सफल हो जाता है, डाउनलोड शुरू नहीं होता है। मैंने बहुत से प्रश्न और लेख पढ़े लेकिन अधिकांश जवाब कहते हैं कि बल-डाउनलोड हेडर जोड़ना समस्या हल करता है। मुझे किस बिंदु से याद आती है? धन्यवाद।
आप वास्तव में यहां क्या पूछ रहे हैं? यह स्पष्ट नहीं है। – Liam
डाउनलोड सर्वर की ओर से शुरू नहीं होता है? मैं इसे शुरू नहीं कर सका। फायरबग में प्रतिक्रिया फ़ील्ड ऐसा लगता है कि कुछ डेटा से भरा है लेकिन कोई डाउनलोड नहीं है। – tkcn