QR কোড মজার, তাই না? আমরা তাদের ভালবাসি, তারপর ঘৃণা করি, তারপর আবার ভালবাসি। যাইহোক, তারা ইদানীং আবার পপ আপ করা হয়েছে এবং এটা কিভাবে তারা তৈরি করা হয়েছে সম্পর্কে চিন্তা করা হয়েছে. সেখানে একটি গ্যাজিলিয়ন QR কোড জেনারেটরের মতো আছে, কিন্তু বলুন যে এটি এমন কিছু যা আপনার নিজের ওয়েবসাইটে করতে হবে। এই প্যাকেজ এটা করতে পারেন। কিন্তু স্টাফ জেনারেট করার জন্য প্রয়োজনীয় সবকিছুর জন্য এটির ওজনও 180 KB-এর বেশি। আপনি আপনার বাকি স্ক্রিপ্টগুলির সাথে এটি সমস্ত পরিবেশন করতে চান না।
এখন, আমি ক্লাউড ফাংশন ধারণার জন্য অপেক্ষাকৃত নতুন, কিন্তু আমি শুনেছি যে মৌমাছির হাঁটু ঠিক এইরকম কিছুর জন্য। এইভাবে, ফাংশনটি একটি সার্ভারে কোথাও থাকে যা প্রয়োজন হলে কল করা যেতে পারে। ফাংশন চালানোর জন্য একটি সামান্য API মত সাজান.
কিছু হোস্ট কিছু ধরণের ক্লাউড ফাংশন বৈশিষ্ট্য অফার করে। DigitalOcean তাদের মধ্যে একটি হতে হবে! এবং, ফোঁটাগুলির মতো, ফাংশনগুলি স্থাপন করা বেশ সহজ।
স্থানীয়ভাবে একটি ফাংশন ফোল্ডার তৈরি করুন
DigitalOcean এর একটি CLI আছে যা একটি কমান্ড সহ যা আমাদের জন্য জিনিসগুলিকে ভারাক্রান্ত করবে, তাই cd
যেখানেই আপনি জিনিসগুলি সেট আপ এবং চালাতে চান:
doctl serverless init --language js qr-generator
ভাষাটি স্পষ্টভাবে ঘোষণা করা হয়েছে লক্ষ্য করুন। DigitalOcean ফাংশন এছাড়াও PHP এবং Python সমর্থন করে।
আমরা নামক একটি সুন্দর পরিষ্কার প্রকল্প পেতে qr-generator
সঙ্গে একটি /packages
ফোল্ডার যা সমস্ত প্রকল্পের ফাংশন ধারণ করে। সেখানে একটি নমুনা ফাংশন আছে, কিন্তু আমরা আপাতত এটি উপেক্ষা করতে পারেন এবং একটি তৈরি করতে পারেন qr
এর ঠিক পাশে ফোল্ডার:
যে ফোল্ডার যেখানে উভয় qrcode
প্যাকেজ এবং আমাদের qr.js
ফাংশন লাইভ যাচ্ছে. সুতরাং চল cd
মধ্যে packages/sample/qr
এবং প্যাকেজ ইনস্টল করুন:
npm install --save qrcode
এখন আমরা একটি নতুন ফাংশন লিখতে পারি qr.js
ফাইল:
const qrcode = require('qrcode') exports.main = (args) => { return qrcode.toDataURL(args.text).then(res => ({ headers: { 'content-type': 'text/html; charset=UTF-8' }, body: args.img == undefined ? res : `<img src="${res}">` }))
} if (process.env.TEST) exports.main({text:"hello"}).then(console.log)
যে সব করছেন প্রয়োজন হয় qrcode
প্যাকেজ এবং রপ্তানি করা একটি ফাংশন যা মূলত একটি উৎপন্ন করে <img>
উৎসের জন্য একটি base64 PNG দিয়ে ট্যাগ করুন। এমনকি আমরা টার্মিনালে এটি পরীক্ষা করতে পারি:
doctl serverless functions invoke sample/qr -p "text:css-tricks.com"
কনফিগার ফাইল চেক করুন
আমাদের এখানে একটি অতিরিক্ত পদক্ষেপ প্রয়োজন। যখন প্রকল্প ভারা ছিল, আমরা এই সামান্য পেয়েছিলাম project.yml
ফাইল এবং এটি সম্পর্কে কিছু তথ্য দিয়ে ফাংশনটি কনফিগার করে। এটি ডিফল্টরূপে সেখানে যা আছে:
targetNamespace: ''
parameters: {}
packages: - name: sample environment: {} parameters: {} annotations: {} actions: - name: hello binary: false main: '' runtime: 'nodejs:default' web: true parameters: {} environment: {} annotations: {} limits: {}
সেই হাইলাইট করা লাইনগুলি দেখুন? দ্য packages: name
সম্পত্তি যেখানে packages
ফোল্ডার ফাংশন লাইভ, যা একটি ফোল্ডার বলা হয় sample
এক্ষেত্রে. দ্য actions/ name
বৈশিষ্ট্য হল ফাংশনের নাম, যা ফাইলের নাম। এটা hello
ডিফল্টরূপে যখন আমরা প্রকল্পটি স্পিন আপ করি, কিন্তু আমরা আমাদের নামকরণ করি qr.js
, তাই আমাদের সেই লাইনটি থেকে পরিবর্তন করা উচিত hello
থেকে qr
এগিয়ে যাওয়ার আগে।
ফাংশন স্থাপন করুন
আমরা কমান্ড লাইন থেকে সরাসরি এটা করতে পারি! প্রথমত, আমরা DigitalOcean স্যান্ডবক্স পরিবেশের সাথে সংযোগ করি তাই আমাদের কাছে পরীক্ষার জন্য একটি লাইভ URL আছে:
## You will need an DO API key handy
doctl sandbox connect
এখন আমরা ফাংশন স্থাপন করতে পারি:
doctl sandbox deploy qr-generator
একবার স্থাপন করা হলে, আমরা একটি URL এ ফাংশন অ্যাক্সেস করতে পারি। URL কি? এর জন্য একটি আদেশ আছে:
doctl sbx fn get sample/qr --url
https://faas-nyc1-2ef2e6cc.doserverless.co/api/v1/web/fn-10a937cb-1f12-427b-aadd-f43d0b08d64a/sample/qr
হেক হ্যাঁ! বাকি স্ক্রিপ্টগুলির সাথে পুরো প্যাকেজটি পাঠানোর আর দরকার নেই! আমরা সেই URL টি হিট করতে পারি এবং সেখান থেকে QR কোড তৈরি করতে পারি।
ডেমো
We fetch
এপিআই এবং যে সত্যিই এটি আছে সব!
আসুন একটি সার্ভারহীন ফাংশন সহ একটি QR কোড জেনারেটর তৈরি করি! মূলত প্রকাশিত সিএসএস-ট্রিকস। তোমার উচিত নিউজলেটার পান.
- '
- "
- 9
- a
- সম্পর্কে
- প্রবেশ
- স্টক
- সব
- API
- মূলত
- আগে
- শরীর
- পরিবর্তন
- মেঘ
- কোড
- ধারণা
- সংযোগ করা
- কনসোল
- সৃষ্টি
- স্থাপন
- মোতায়েন
- পরিবেশ
- সব
- বৈশিষ্ট্য
- প্রথম
- থেকে
- ক্রিয়া
- ক্রিয়াকলাপ
- হাস্যকর
- উত্পাদন করা
- উত্পাদক
- চালু
- এখানে
- হাইলাইট করা
- ঝুলিতে
- কিভাবে
- HTTPS দ্বারা
- তথ্য
- ইনস্টল
- IT
- নিজেই
- জাভাস্ক্রিপ্ট
- চাবি
- ভাষা
- লাইন
- লাইন
- সামান্য
- জীবিত
- ভালবাসা
- প্রণীত
- করা
- অধিক
- চলন্ত
- চাহিদা
- অর্পণ
- নিজের
- প্যাকেজ
- চমত্কার
- প্রক্রিয়া
- প্রকল্প
- সম্পত্তি
- QR কোড
- RE
- বিশ্রাম
- প্রত্যাবর্তন
- চালান
- স্যান্ডবক্স
- Serverless
- সেট
- So
- কিছু
- কিছু
- কোথাও
- ঘূর্ণন
- সমর্থন
- প্রান্তিক
- পরীক্ষা
- পরীক্ষামূলক
- সার্জারির
- উৎস
- কিছু
- চিন্তা
- us
- ওয়েব
- ওয়েবসাইট
- আপনার