এক্স-রিক্যুয়েস্ট-আইডি HTTP শিরোনাম কী?


97

আমি ইতিমধ্যে এই বিষয়টিকে অনেকটা গুগল করেছি, এই শিরোলেখ সম্পর্কে বিভিন্ন নিবন্ধ, হিরোকুতে এর ব্যবহার এবং জ্যাঙ্গো ভিত্তিক প্রকল্পগুলি পড়েছি।

যাইহোক, এটি এখনও আমার মাথায় বিভ্রান্ত।

  • এই শিরোনামটির উদ্দেশ্য কী?
  • এটি ব্যবহারকারীর গোপনীয়তা লঙ্ঘন করে?
  • এটি কোনও ব্যবহারকারীর ট্র্যাকিংয়ে সহায়তা করতে পারে?

4
@ ব্রিকেন আমি ইতিমধ্যে এটি করেছি ... এবং আমি এখনও এই শিরোলেখ সম্পর্কে বিভ্রান্ত।
স্টিফান

তারপরে, (1) অনুরোধটি আপনার অ্যাপ্লিকেশনটিতে প্রেরিত অনুরোধের সাথে কোনও ওয়েব ক্রোয়েস্টকে সঙ্কলিত করার জন্য (২) না, কারণ ব্যবহারকারী এটি পাঠায় না, রাউটারটি সেট করে (3) (2) দেখুন, তবে এটি ব্যক্তিগতভাবে ট্র্যাক করতে সহায়তা করতে পারে ডিবাগ করার সময় অনুরোধ।
রিক্কেন

উত্তর:


170

আপনি যখন ক্লায়েন্টদের দ্বারা অ্যাক্সেস করা কোনও ওয়েবসার্চ পরিচালনা করছেন তখন সার্ভার লগগুলির সাথে (যে কোনও ক্লায়েন্ট দেখতে পাবে) অনুরোধগুলি সংযুক্ত করা কঠিন হতে পারে (যা সার্ভার দেখতে পারে)।

এর ধারণাটি X-Request-IDহ'ল কোনও ক্লায়েন্ট কিছু এলোমেলো আইডি তৈরি করতে এবং এটি সার্ভারে পাস করতে পারে। সার্ভার তারপরে প্রতিটি লগ স্টেটমেন্টে সেই আইডি অন্তর্ভুক্ত করে। কোনও ক্লায়েন্ট কোনও ত্রুটি পেলে এটি কোনও বাগ রিপোর্টে আইডি অন্তর্ভুক্ত করতে পারে, সার্ভার অপারেটরটিকে সংশ্লিষ্ট লগ স্টেটমেন্টগুলি সন্ধান করতে দেয় (টাইমস্ট্যাম্প, আইপি ইত্যাদির উপর নির্ভর না করে)।

যেহেতু এই আইডিটি ক্লায়েন্ট দ্বারা তৈরি করা হয়েছে (এলোমেলোভাবে) এতে কোনও সংবেদনশীল তথ্য নেই এবং সুতরাং ব্যবহারকারীর গোপনীয়তা লঙ্ঘন করা উচিত নয়। অনুরোধ অনুযায়ী একটি অনন্য আইডি তৈরি হওয়ার সাথে সাথে এটি ট্র্যাকিং ব্যবহারকারীদের সাথেও সহায়তা করে না।


@ ব্রিকেন তার / তার মন্তব্যে উল্লেখ করেছেন যে আইডিটি রাউটার দ্বারা নির্ধারিত হয়েছিল এবং এখানে তার ক্লায়েন্ট রয়েছে। ক্লায়েন্ট কি?
স্টিফান

4
ক্লায়েন্ট হ'ল এমন একটি সফ্টওয়্যার যা সার্ভারে অনুরোধটি প্রেরণ করে, জেএমটারের মতো ব্রাউজার বা স্ট্রেস টেস্ট সরঞ্জাম হতে পারে। এছাড়াও সার্ভারটি অনুরোধ আইডি তৈরি করতে পারে যদি কোনওটি মূল ক্লায়েন্ট দ্বারা সরবরাহ না করা হয় এবং লাইনটি অন্য সার্ভারগুলিতে এটি সরবরাহ করে, যেমন ওয়েব সার্ভার আইডি উত্পন্ন করে অ্যাপ্লিকেশন সার্ভারে ফরোয়ার্ড করে।
ইস্পির

4
হেরোকু ব্লগটি এক্স-রিকোয়েস্ট-আইডি স্বতন্ত্র HTTP (গুলি) অনুরোধগুলিতে একাধিক লগ এন্ট্রি সংশোধন করতে সহায়তা করে: blog.heroku.com/…
স্টিফান

4
এটি CorrelationId নামে পরিচিত এবং স্ট্যান্ডার্ড এইচটিটিপি শিরোনাম নয়: en.wikedia.org/wiki/List_of_HTTP_header_fields এক্স-অনুরোধ-আইডি, এক্স-সম্পর্ক-আইডি। ক্লায়েন্ট এবং সার্ভারের মধ্যে HTTP অনুরোধগুলি সংযুক্ত করে।
মেজর

যদি প্রতিটি অনুরোধটি ব্যবহারকারী সেশনের সাথে আসে, তবে কি এক্স-রিকোয়েস্ট-আইডি সংযুক্ত করা প্রয়োজনীয়?
জেরি চিন

14

উদ্দেশ্য: আদর্শ

প্রতিটি অনুরোধের জন্য পরিবর্তিত আইডির সাহায্যে, তবে অনুরোধটি পুনরায় চেষ্টা করার ক্ষেত্রে প্রেরণকারী একই সাথে অনুরোধটি একাধিকবার প্রক্রিয়াজাত না হয়ে থাকতে পারে।

এটি কিছু এপিআই সরবরাহকারীর একটি উক্তি:

সমস্ত পোষ্ট, পুট এবং প্যাচ এইচটিটিপি অনুরোধে একটি অনন্য এক্স-অনুরোধ-আইডি শিরোনাম থাকা উচিত যা পুনরায় চেষ্টা করার ক্ষেত্রে আইডেম্পোটেন্ট মেসেজ প্রসেসিং নিশ্চিত করতে ব্যবহৃত হয়

আপনি যদি এটিকে এলোমেলো স্ট্রিং করে থাকেন, অনুরোধ অনুযায়ী অনন্য , এটি আপনার গোপনীয়তার লঙ্ঘন করবে না বা ট্র্যাকিং সক্ষম করবে না।

আইডেম্পোটেন্সি কী প্রস্তাব দেয় সে সম্পর্কে আপনি যদি আরও জানতে চান তবে এই অন্তর্দৃষ্টিপূর্ণ নিবন্ধটি পড়ুন

এনবি স্টিফান কেগল মন্তব্য করেছেন যে, এই শিরোনামটি মানক করা হয়নি - সুতরাং (অবমূল্যায়িত) "এক্স-" উপসর্গ।


4
দয়া করে মনে রাখবেন যে "কিছু কিছু এপিআই সরবরাহকারী" এক্স-রিকোয়েস্ট-আইডি শিরোনামটি এভাবে ব্যবহার করতে পারে, এটি মানক আচরণ নয়। এটি সাধারণত এই উদ্দেশ্যে ব্যবহার করা যায় না।
স্টিফান কেগল

আরেকটি সরল স্নিপেট: পুনঃটঠন
ভিডিওর জগতে

1

একটি গল্প / উপমা ব্যবহার করে ব্যাখ্যা

আপনার ইন্টারনেট চলছে (যথারীতি), সুতরাং আপনি টেলস্ট্রা কল করবেন এবং আপনি চিরকালের জন্য ফোনে অপেক্ষা করছেন ...... অবশেষে আপনি হতাশ হয়ে ফোনটি স্ল্যাম করে স্ল্যাম করলেন। (এটি একটি ব্যর্থ কল And এবং টেলস্ট্রার কল লগগুলিতে এর একটি রেকর্ড রয়েছে))

"এটাই, আমি লোকপালকে ডাকছি!"

তবে ওবমডসম্যানের কাছে হাজার হাজার কল রেকর্ড রয়েছে (টেলস্ট্রার সমস্ত ব্যর্থ অনুসন্ধান)। যদি আপনি তাদের বলেন যে আপনি টেলস্ট্রাকে বলেছেন, এবং আপনার কলটি ব্যর্থ হয়েছে, তবে তা পর্যাপ্ত হবে না: টেলস্ট্রার সমস্ত কল রেকর্ড থেকে ওম্বডসম্যান কীভাবে জানতে পারবেন, যা আপনার ছিল - যাতে এটি আরও তদন্ত করা যায়? ?

এক্স-রিকোয়েস্ট-আইডিটি এখানে আসে - আপনি যখন কখনও টেলস্ট্রা কল করেন তখন আপনি একটি এলোমেলো সংখ্যার (এক্স-অনুরোধ-আইডি) পাস করবেন এবং এটি টেলস্ট্রার রেকর্ডগুলিতে লগড। এইভাবে, অম্বডসম্যান (সমস্ত রেকর্ডে অ্যাক্সেস থাকা) কী ভুল হয়েছে তা খুঁজে পেতে আপনার ইনকামিং কলটি সন্ধান করতে সক্ষম হবে।

এইচটিটিপি-তে গল্পের প্রয়োগ

একইটি HTTP অনুরোধগুলিতে প্রযোজ্য - কোনও ক্লায়েন্ট যখন আপনাকে ত্রুটি বা বড় প্রতিবেদন সরবরাহ করে তখন কী ভুল হয়েছে তা অনুসন্ধানে (পিছনের দিকের দেব হিসাবে) আপনাকে সহায়তা করতে এটি আইডি ব্যবহৃত হয়।

এটি এর প্রাথমিক সারসংক্ষেপ। কোন প্রশ্ন ইত্যাদি ঠিক একটি মন্তব্য পোস্ট করুন এবং আমি এটি পরিষ্কার করার আশা করি।


4
এখানে "উপমা" আমার মতে স্পষ্টতার চেয়ে বিভ্রান্তি যুক্ত করে adds ফোন কল করার ক্ষেত্রে কোনও এলোমেলো নম্বর দিয়ে যাওয়ার কোনও উপায় নেই যা প্রাপকের দ্বারা স্বয়ংক্রিয়ভাবে লগ হয়ে যায় এবং ফলস্বরূপ আপনার গল্পটি অযৌক্তিক।
মার্ক

-12

এই অনুরোধ শিরোনাম সিঙ্ক্রোনাইজেশনের জন্য ব্যবহার করা যেতে পারে। ধরা যাক আপনি একটি টুডো তালিকা তৈরি করেছেন যা অফলাইনে সক্ষমতার অফার দেয়। আপনার ব্যবহারকারী 3 টি আইটেম তৈরি করে এবং তাদের প্রত্যেককে অফলাইনে অ্যাপ্লিকেশনটিতে একটি অনন্য ইউআইডি দেওয়া হয়। যখন নেটওয়ার্ক সংযোগ উপলব্ধ থাকে, তখন রেকর্ডগুলি সার্ভারে পোস্ট করা হয় এবং ডাটাবেস থেকে স্বয়ংক্রিয়ভাবে উত্পন্ন উত্সযুক্ত আইডি ফিরে আসে। তারপরে আপনি আপনার অ্যাপ্লিকেশনটিতে আইডি প্রতিস্থাপন করতে পারেন (যেমন "আইডি" এইচটিএমএল "লি" উপাদানটির বৈশিষ্ট্য)।


4
এখানে বর্ণিত পরিস্থিতি ইউইউডি পরিবহনের জন্য কোনও HTTP শিরোনামকে বোঝায় না।
স্টিফান
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.