दिलचस्प पोस्ट
जब मैं सिर्फ स्क्रिप्ट के नाम का उपयोग करके विंडोज पर पायथन स्क्रिप्ट चलाता हूं तब आउटपुट को रीडायरेक्ट नहीं किया जा सकता c: ईईआई के अंदर प्राइमफॉसेस (जैसे पी: पैनलग्रीड) के लिए प्रत्येक: दोहराएँ एकाधिक कॉलम एक साथ पेस्ट करें एएसपी.नेट एमवीसी के अंतर्गत एसएसएल पेज आईफ़ोन: कुंजीपटल भाषा को प्रोग्रामेटिक रूप से बदलें एनजी-चयनित चयनित तत्व में काम नहीं कर रहा है एक हैम्सपैड में एक कुंजी के रूप में एक ऑब्जेक्ट का उदाहरण का उपयोग करना, और फिर उसे बिल्कुल नया ऑब्जेक्ट के साथ एक्सेस करना है? IE में dropdownlist चौड़ाई 2 डी सरणी में .txt फ़ाइल पढ़ें नियमित अभिव्यक्ति जिसमें कुछ स्ट्रिंग शामिल नहीं है कैसे एक छवि (एनीमेशन) को स्थानांतरित करने के लिए? विधि में कई बहस पारित करने के लिए सर्वश्रेष्ठ अभ्यास? कैसे एक CVPixelBuffer एक UIImage में बारी करने के लिए? संकलित समय पर संदर्भित परियोजना "खोया" हो जाता है रूट फ़ोन के सिस्टम समय की स्थापना

कोयोनर में सर्वर से फ़ाइलों के रूप में टेक्स्ट / सीएसवी सामग्री डाउनलोड करें

मैं एक नोड। जेएस सर्वर से एक csv फ़ाइल स्ट्रीम करने की कोशिश कर रहा हूँ सर्वर भाग बहुत सरल है:

 server.get('/orders' function(req, res) { res.setHeader('content-type', 'text/csv'); res.setHeader('content-disposition', 'attachment; filename='orders.csv'); return orders.pipe(res); // assuming orders is a csv file readable stream (doesn't have to be a stream, can be a normal response) } 

मेरे कोण नियंत्रक में मैं ऐसा कुछ करने की कोशिश कर रहा हूं

 $scope.csv = function() { $http({method: 'GET', url: '/orders'}); }; 

इस समारोह को तब कहा जाता है जब मेरे दृश्य में ng-click बटन पर एक क्लिक होता है:

 <button ng-click="csv()">.csv</button> 

मैंने कोने में सर्वर से फाइल डाउनलोड करने के बारे में अन्य जवाबों को देखा है, लेकिन मेरे लिए काम करने वाले कुछ भी नहीं मिला। ऐसा करने का एक आम तरीका है? ऐसा लगता है कि सरल होना चाहिए

Solutions Collecting From Web of "कोयोनर में सर्वर से फ़ाइलों के रूप में टेक्स्ट / सीएसवी सामग्री डाउनलोड करें"

$http सेवा एक promise देता है जो नीचे दिखाए गए अनुसार दो कॉलबैक विधियां हैं

 $http({method: 'GET', url: '/someUrl'}). success(function(data, status, headers, config) { var anchor = angular.element('<a/>'); anchor.attr({ href: 'data:attachment/csv;charset=utf-8,' + encodeURI(data), target: '_blank', download: 'filename.csv' })[0].click(); }). error(function(data, status, headers, config) { // handle error }); 

इस मुद्दे के बारे में वेब पर अधिकतर संदर्भ इस बात को बताते हैं कि आप 'बॉक्स से बाहर' एजेक्स कॉल के जरिए फाइल डाउनलोड नहीं कर सकते हैं। मैंने (हैश) समाधानों को देखा है, जिसमें इफ्रेम और समाधान भी शामिल हैं जैसे @ डीकोडस्मिथ के काम और पूरी तरह से व्यवहार्य हैं।

यहाँ एक और उपाय है जो मैंने पाया है कि कांगारू में काम करता है और बहुत तेज है।

इस दृश्य में , <a> निम्न तरीके से टैग के साथ csv डाउनलोड बटन लपेटो:

 <a target="_self" ng-href="{{csv_link}}"> <button>download csv</button> </a> 

( target="_self वहाँ ध्यान दें, यह एनजी-एप के अंदर का कोणीय रूटिंग को अक्षम करने के लिए महत्वपूर्ण है इसके बारे में यहां )

आपके नियंत्रक के अंदर आप निम्न तरीके से csv_link को परिभाषित कर सकते हैं:

 $scope.csv_link = '/orders' + $window.location.search; 

( $window.location.search वैकल्पिक है और यदि आप अपने सर्वर से अतिरिक्त खोज क्वेरी पास करना चाहते हैं तो ओएलएल)

अब हर बार जब आप बटन पर क्लिक करते हैं, तो उसे डाउनलोड करना शुरू कर देना चाहिए।

 var anchor = angular.element('<a/>'); anchor.css({display: 'none'}); // Make sure it's not visible angular.element(document.body).append(anchor); // Attach to document anchor.attr({ href: 'data:attachment/csv;charset=utf-8,' + encodeURI(data), target: '_blank', download: 'filename.csv' })[0].click(); anchor.remove(); // Clean it up afterwards 

यह कोड मोज़िला और क्रोम दोनों को काम करता है

यह मेरे लिए IE 11+, फ़ायरफ़ॉक्स और क्रोम के लिए काम किया गया है। सफारी में यह एक फाइल डाउनलोड करता है लेकिन अज्ञात के रूप में और फ़ाइल नाम सेट नहीं है।

 if (window.navigator.msSaveOrOpenBlob) { var blob = new Blob([csvDataString]); //csv data string as an array. // IE hack; see http://msdn.microsoft.com/en-us/library/ie/hh779016.aspx window.navigator.msSaveBlob(blob, fileName); } else { var anchor = angular.element('<a/>'); anchor.css({display: 'none'}); // Make sure it's not visible angular.element(document.body).append(anchor); // Attach to document for FireFox anchor.attr({ href: 'data:attachment/csv;charset=utf-8,' + encodeURI(csvDataString), target: '_blank', download: fileName })[0].click(); anchor.remove(); } 

कोणीय 1.5.9 का उपयोग करना

मैंने इसे सीसीवी फ़ाइल डाउनलोड यूआरएल के लिए खिड़की पर स्थान सेट करके इस तरह काम किया। परीक्षण और क्रोम और आईई 11 के नवीनतम संस्करण के साथ काम करना।

कोणीय

  $scope.downloadStats = function downloadStats{ var csvFileRoute = '/stats/download'; $window.location = url; } 

एचटीएमएल

 <a target="_self" ng-click="downloadStats()"><i class="fa fa-download"></i> CSV</a> 

Php में प्रतिक्रिया के लिए निम्न शीर्ष लेख सेट करें:

 $headers = [ 'content-type' => 'text/csv', 'Content-Disposition' => 'attachment; filename="export.csv"', 'Cache-control' => 'private, must-revalidate, post-check=0, pre-check=0', 'Content-transfer-encoding' => 'binary', 'Expires' => '0', 'Pragma' => 'public', ];