উভয়ই ক্লায়েন্টকে প্রতিক্রিয়া জানাতে একই ক্রিয়াকলাপ সম্পাদন করে বলে মনে হয় res.send
এবং এর মধ্যে প্রকৃত পার্থক্য কী res.json
।
উভয়ই ক্লায়েন্টকে প্রতিক্রিয়া জানাতে একই ক্রিয়াকলাপ সম্পাদন করে বলে মনে হয় res.send
এবং এর মধ্যে প্রকৃত পার্থক্য কী res.json
।
উত্তর:
কোনও বস্তু বা অ্যারে পাস করার সময় পদ্ধতিগুলি অভিন্ন হয়, তবে res.json()
অ-অবজেক্টগুলিকে রূপান্তরিত করে, যেমন null
এবং undefined
, যা বৈধ JSON নয়।
পদ্ধতিটি অ্যাপ্লিকেশন সেটিংস json replacer
এবং json spaces
অ্যাপ্লিকেশন সেটিংসও ব্যবহার করে , যাতে আপনি আরও বিকল্পের সাথে জেএসওএন ফর্ম্যাট করতে পারেন। এই বিকল্পগুলি যেমন সেট করা হয়:
app.set('json spaces', 2);
app.set('json replacer', replacer);
এবং এর JSON.stringify()
মত একটি পাস :
JSON.stringify(value, replacer, spacing);
// value: object to format
// replacer: rules for transforming properties encountered during stringifying
// spacing: the number of spaces for indentation
res.json()
প্রেরণ পদ্ধতিতে এই পদ্ধতিতে কোডটি নেই:
var app = this.app;
var replacer = app.get('json replacer');
var spaces = app.get('json spaces');
var body = JSON.stringify(obj, replacer, spaces);
পদ্ধতিটি শেষ পর্যন্ত res.send()
শেষ হয়:
this.charset = this.charset || 'utf-8';
this.get('Content-Type') || this.set('Content-Type', 'application/json');
return this.send(body);
res.json
শেষ পর্যন্ত কল res.send
, কিন্তু এটি আগে:
json spaces
এবং json replacer
অ্যাপ্লিকেশন সেটিংস সম্মান করেপাঠানো শিরোনামগুলিতে সন্ধান করা হচ্ছে ...
পুনরায় বিক্রয় সামগ্রী সামগ্রী-প্রকার ব্যবহার করে: পাঠ্য / এইচটিএমএল
রেজ.জেসন সামগ্রী সামগ্রী প্রকার: অ্যাপ্লিকেশন / জেসন ব্যবহার করে
res.json
যুক্তিটি JSON এ জোর করে। res.send
একটি নন-জসন অবজেক্ট বা অ্যারে নেবে এবং অন্য ধরণের প্রেরণ করবে। উদাহরণ স্বরূপ:
এটি একটি জেএসএন নম্বর ফিরিয়ে দেবে।
res.json(100)
এটি একটি স্থিতি কোড ফেরত দেবে এবং সেন্ড স্ট্যাটাস ব্যবহার করার জন্য একটি সতর্কতা জারি করবে।
res.send(100)
যদি আপনার যুক্তিটি কোনও JSON অবজেক্ট বা অ্যারে না হয় (নাল, অপরিজ্ঞাত, বুলিয়ান, স্ট্রিং) এবং আপনি এটি JSON হিসাবে প্রেরণ করা হয়েছে তা নিশ্চিত করতে চান, ব্যবহার করুন res.json
।