Lambda Response Object এর কাঠামো

Lambda এর ইভেন্ট ডেটা প্রসেসিং - এডাব্লিউএস ল্যাম্বডা (AWS Lambda) - Web Development

199

AWS Lambda ফাংশনের আউটপুট বা রেসপন্স সাধারণত একটি Response Object হিসেবে ফেরা হয়, যা ফাংশনের ট্রিগার করা ইভেন্টের ভিত্তিতে কাজ করে এবং সেই অনুযায়ী রিটার্ন করা হয়। এই রেসপন্সটি ফাংশনের কার্যকারিতা অনুযায়ী ক্লায়েন্ট বা সংশ্লিষ্ট সিস্টেমে ফলাফল পাঠায়। Lambda ফাংশনের রেসপন্স অবজেক্টের কাঠামো সাধারণত নির্দিষ্ট কিছু ফিল্ডে গঠিত থাকে, যা ডেভেলপারদের নির্দিষ্ট ফরম্যাটে আউটপুট ফেরত দিতে সহায়তা করে।


Lambda Response Object এর মৌলিক কাঠামো

Lambda ফাংশন একটি JSON অবজেক্ট রিটার্ন করে যা সাধারণত নিম্নলিখিত কাঠামোতে থাকে:

{
    "statusCode": 200,
    "body": "Response Body Data",
    "headers": {
        "Content-Type": "application/json"
    },
    "isBase64Encoded": false
}

এই কাঠামোতে কিছু গুরুত্বপূর্ণ ফিল্ড রয়েছে যা বিভিন্ন পরিস্থিতিতে পরিবর্তিত হতে পারে। নিচে প্রতিটি ফিল্ডের ব্যাখ্যা দেওয়া হলো।


1. statusCode (স্ট্যাটাস কোড)

  • ব্যাখ্যা: statusCode ফিল্ডটি HTTP স্ট্যাটাস কোড ধারণ করে যা Lambda ফাংশনটির সফলতা বা ত্রুটির ইঙ্গিত দেয়।
  • উদাহরণ:
    • 200: সফলভাবে সম্পাদিত হয়েছে (OK)
    • 400: খারাপ রিকোয়েস্ট (Bad Request)
    • 500: সার্ভার ত্রুটি (Internal Server Error)
  • ধারণা: এটি একটি পূর্ণসংখ্যা (Integer) যা HTTP প্রোটোকলের জন্য স্ট্যান্ডার্ড রেসপন্স কোড হয়ে থাকে।

2. body (বডি)

  • ব্যাখ্যা: body ফিল্ডটি সাধারণত Lambda ফাংশনের মূল আউটপুট ডেটা ধারণ করে। এটি একটি স্ট্রিং হিসেবে রিটার্ন করা হয়, যা JSON বা অন্যান্য ফরম্যাটে থাকতে পারে।
  • উদাহরণ:

    {
        "message": "Hello, World!"
    }
    

    অথবা

    "Success: Data processed"
    
  • ধারণা: এটি একটি স্ট্রিং হতে পারে, যা সাধারণত JSON অবজেক্টের আকারে থাকে, তবে সাধারণ টেক্সট বা অন্যান্য ফরম্যাটও থাকতে পারে।

3. headers (হেডারস)

  • ব্যাখ্যা: headers ফিল্ডটি Lambda রেসপন্সের অতিরিক্ত মেটাডেটা ধারণ করে, যা HTTP হেডারস হিসেবে ব্যবহৃত হয়। এটি সাধারণত কন্টেন্ট টাইপ বা কুকি ইত্যাদি সম্পর্কিত তথ্য ধারণ করে।
  • উদাহরণ:

    {
        "Content-Type": "application/json"
    }
    
  • ধারণা: এটি একটি অবজেক্ট যা HTTP হেডারস এর তথ্য ধারণ করে। এখানে আপনি বিভিন্ন কাস্টম হেডারস যুক্ত করতে পারেন, যেমন Content-Type, Authorization, ইত্যাদি।

4. isBase64Encoded (বেস64 এনকোডেড চেক)

  • ব্যাখ্যা: isBase64Encoded ফিল্ডটি একটি বুলিয়ান ভ্যালু (True বা False) থাকে যা নির্দেশ করে যে, রেসপন্সের body ফিল্ডটি বেস64 এনকোডেড ডেটা হিসেবে রয়েছে কি না। এটি সাধারণত তখন ব্যবহৃত হয় যখন আপনি বাইনারি ডেটা বা ছবি ইত্যাদি পাঠাতে চান।
  • উদাহরণ:
    • false: আউটপুট বেস64 এনকোডেড নয়।
    • true: আউটপুট বেস64 এনকোডেড।
  • ধারণা: যদি body ফিল্ডটি বেস64 এনকোডেড হয়, তবে এই ফিল্ডটি true হবে এবং body এর ভ্যালু হিসেবে বেস64 এনকোডেড স্ট্রিং পাঠানো হবে।

Lambda Response Object এর উদাহরণ

একটি পূর্ণাঙ্গ Lambda Response Object নিচে দেওয়া হল:

{
    "statusCode": 200,
    "body": "{\"message\": \"Hello, World!\"}",
    "headers": {
        "Content-Type": "application/json",
        "X-Custom-Header": "CustomValue"
    },
    "isBase64Encoded": false
}

এখানে:

  • statusCode: 200 (সফল রিকোয়েস্ট)
  • body: JSON ফরম্যাটে আউটপুট, এখানে "message": "Hello, World!"
  • headers: JSON হেডার, যেখানে Content-Type এবং X-Custom-Header কাস্টম হেডার রয়েছে
  • isBase64Encoded: false, অর্থাৎ আউটপুট বেস64 এনকোডেড নয়।

সারাংশ

AWS Lambda ফাংশন থেকে রেসপন্স দেয়ার সময়, Lambda Response Object একটি কাঠামোবদ্ধ JSON অবজেক্ট হিসেবে রিটার্ন করা হয়, যা statusCode, body, headers, এবং isBase64Encoded ফিল্ড ধারণ করে। এই কাঠামোটি ব্যবহার করে আপনি Lambda ফাংশনের আউটপুট সংক্রান্ত সমস্ত তথ্য ক্লায়েন্ট বা সংশ্লিষ্ট সিস্টেমে পাঠাতে পারেন, যা বিভিন্ন HTTP রিকোয়েস্টের রেসপন্স হিসেবে ব্যবহৃত হয়।

Content added By
Promotion

Are you sure to start over?

Loading...