ফাইলসেভার.জেএস দ্বারা ব্যবহৃত কৌশলটি সম্পর্কে আমি কেবলমাত্র অবগত আছি :
- একটি লুকানো
<a>
ট্যাগ তৈরি করুন ।
href
ব্লবের URL এ এর বৈশিষ্ট্যটি সেট করুন ।
download
ফাইলটির নামের সাথে এর বৈশিষ্ট্যটি সেট করুন ।
<a>
ট্যাগ ক্লিক করুন ।
এখানে সরলীকৃত উদাহরণ ( jsfiddle ):
var saveData = (function () {
var a = document.createElement("a");
document.body.appendChild(a);
a.style = "display: none";
return function (data, fileName) {
var json = JSON.stringify(data),
blob = new Blob([json], {type: "octet/stream"}),
url = window.URL.createObjectURL(blob);
a.href = url;
a.download = fileName;
a.click();
window.URL.revokeObjectURL(url);
};
}());
var data = { x: 42, s: "hello, world", d: new Date() },
fileName = "my-download.json";
saveData(data, fileName);
আমি এই উদাহরণটি লিখেছি কেবল ধারণাটি চিত্রিত করার জন্য, প্রোডাকশন কোডে ফাইলসভার.জেএস ব্যবহার করুন।
মন্তব্য
- পুরানো ব্রাউজারগুলি "ডাউনলোড" বৈশিষ্ট্যটি সমর্থন করে না, কারণ এটি HTML5 এর অংশ।
- কিছু ফাইল ফর্ম্যাট ব্রাউজার দ্বারা সুরক্ষিত হিসাবে বিবেচিত হয় এবং ডাউনলোড ব্যর্থ হয়। টিএসটি এক্সটেনশনের সাহায্যে জেএসওএন ফাইলগুলি সংরক্ষণ করা আমার পক্ষে কাজ করে।