বেসিক অথেন্টিকেশন সহ HTTP রিকুয়েস্ট প্রেরণ

Elixir:
বেসিক অথেন্টিকেশন সহ HTTP রিকুয়েস্ট প্রেরণ

কিভাবে:

Elixir-এ মৌলিক প্রমাণীকরণের সাথে একটি HTTP অনুরোধ পাঠানোর জন্য, আপনি HTTPoison লাইব্রেরি ব্যবহার করতে পারেন:

# mix.exs-এ আপনার প্রকল্পের নির্ভরতাগুলিতে HTTPoison যোগ করুন
defp deps do
  [
    {:httpoison, "~> 1.8"}
  ]
end

# এখন আসুন মৌলিক auth সহ একটি অনুরোধ করি

# নির্ভরতাটি আনতে `mix deps.get` চালান

# আপনার Elixir কোডে
defmodule BasicAuthRequest do
  def send_request do
    # "username:password" ক্রেডেনশিয়ালগুলিকে Base64 ব্যবহার করে এনকোড করুন
    basic_auth =
      "username:password"
      |> Base.encode64()

    # Authorization হেডার সেট করুন
    headers = [{"Authorization", "Basic #{basic_auth}"}]

    # https://example.com/protected-resource এ একটি GET অনুরোধ করুন
    HTTPoison.get("https://example.com/protected-resource", headers)
  end
end

# ফাংশনটি কল করুন
{:ok, response} = BasicAuthRequest.send_request()
IO.inspect(response.status_code)  # যদি প্রমাণীকরণ সফল হয় তবে 200 হওয়া উচিত

যদি মৌলিক প্রমাণীকরণ সফল হয়, আপনি একটি 200 স্ট্যাটাস কোড পাবেন। ব্যর্থ প্রমাণীকরণ সাধারণত একটি 401 ফলাফল দেয়।

গভীর ডুব

মৌলিক প্রমাণীকরণ হল HTTP-এর একটি অংশ যা RFC 7617-এ সংজ্ঞায়িত, এটি খুব প্রাথমিক ওয়েব থেকে ডেট করা হয়েছে। এটি সহজ কিন্তু আধুনিক পদ্ধতিগুলির তুলনায় কম নিরাপদ, প্রতিটি অনুরোধে ক্রেডেনশিয়াল পাঠানো হয় (বেস64 এনকোডেড তবে এনক্রিপ্টেড নয়)।

বিকল্পগুলো অন্তর্ভুক্ত:

  • OAuth: অ্যাক্সেস প্রতিনিধিত্বের জন্য একটি খোলা মান, যা অন্যান্য ওয়েবসাইটগুলিতে তাদের পাসওয়ার্ড ছাড়াই ওয়েবসাইট বা অ্যাপ্লিকেশনগুলিকে তাদের তথ্যে অ্যাক্সেস দেওয়ার জন্য ব্যবহৃত হয়।
  • API কী: API অনুরোধে একটি ব্যবহারকারী বা একটি প্রোগ্রামকে প্রমাণীকরণের জন্য ব্যবহৃত অনন্য পরিচয়কারী।
  • বিয়ারার টোকেন/JWT: নিরাপত্তা টোকেনগুলি যা ব্যবহারকারীকে প্রমাণীকরণের জন্য প্রয়োজনীয় সমস্ত ব্যবহারকারী ডেটা ধারণ করে।

বাস্তবায়নের দিক থেকে, HTTPoison ব্যবহার করে আমরা:

  • ব্যবহারকারী নাম এবং পাসওয়ার্ডকে Base64 এনকোড করি;
  • “Basic " দ্বারা পূর্বসূরী করা এই এনকোডেড স্ট্রিংটি Authorization হেডারে অন্তর্ভুক্ত করি;
  • সার্ভারে অনুরোধ পাঠাই আশায় অ্যাক্সেস পাওয়া যাবে।

মনে রাখবেন, মৌলিক auth স্পষ্ট পাঠ্য এবং সহজেই ডিকোড করা যায়। এটি শুধুমাত্র HTTPS এর উপরে নিরাপদ।

দেখুন এছাড়াও