javascript - কিভাবে কৌণিক প্রতিক্রিয়া শিরোনাম পড়তে?




angularjs angular-http (4)

ইউজিন রেটুনস্কির উত্তর ছাড়াও, প্রতিক্রিয়া সম্পর্কিত $ HTTP ডকুমেন্টেশন থেকে উদ্ধৃত:

প্রতিক্রিয়া অবজেক্টের এই বৈশিষ্ট্যগুলি রয়েছে:

  • ডেটা - {string|Object} - প্রতিক্রিয়া বডি রূপান্তর ফাংশনগুলির সাথে রূপান্তরিত।

  • স্থিতি - {number} - প্রতিক্রিয়াটির HTTP স্থিতি কোড।

  • শিরোলেখ - {function([headerName])} শিরোনাম {function([headerName])} - শিরোনাম প্রাপ্তকারী ফাংশন।

  • কনফিগারেশন - {Object} - কনফিগারেশন অবজেক্ট যা অনুরোধটি তৈরি করতে ব্যবহৃত হয়েছিল।

  • statusText - {string} - প্রতিক্রিয়ার HTTP স্থিতি পাঠ্য।

দয়া করে নোট করুন যে $resource (v1.6) এর জন্য আর্গুমেন্ট কলব্যাক অর্ডার উপরের মত নয়:

সাফল্য কলব্যাককে (value (Object|Array), responseHeaders (Function), status (number), statusText (string)) আর্গুমেন্টের সাহায্যে বলা হয়, যেখানে মানটি পপুলেটেড রিসোর্স উদাহরণ বা সংগ্রহ অবজেক্ট। ত্রুটি (httpResponse) যুক্তি দিয়ে ডাকা হয়।

আমার সার্ভারটি এই জাতীয় শিরোনামটি দেয়: Content-Range:0-10/0 :

আমি এই শিরোনামটি কৌনিকতে কোনও ভাগ্য ছাড়াই পড়ার চেষ্টা করেছি:

var promise = $http.get(url, {
    params: query
}).then(function(response) {
  console.log(response.headers());
  return response.data;
});

যা কেবল প্রিন্ট করে

Object {content-type: "application/json; charset=utf-8"}

বিষয়বস্তু পরিসীমা শিরোনাম কীভাবে অ্যাক্সেস করবেন কোনও ধারণা?


এমডিএন কাস্টম হেডারগুলি ডিফল্টরূপে উন্মুক্ত হয় না exposed সার্ভার প্রশাসককে "অ্যাক্সেস-কন্ট্রোল-এক্সপোজ-শিরোনাম" ব্যবহার করে তাদের একই ধরণের "এক্সেস-নিয়ন্ত্রণ-অনুমতি-উত্স" ব্যবহার করে তাদের প্রকাশ করতে হবে

নিশ্চিতকরণের জন্য এই এমডিএন লিঙ্কটি দেখুন [ https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Expose-Headers]


কেন কেবল এটিকে চেষ্টা করবেন না:

var promise = $http.get(url, {
    params: query
}).then(function(response) {
  console.log('Content-Range: ' + response.headers('Content-Range'));
  return response.data;
});

বিশেষত যদি আপনি promise ফিরিয়ে দিতে চান তবে এটি কোনও প্রতিশ্রুতি শৃঙ্খলার অংশ হতে পারে।


মুহাম্মদের উত্তরের ভিত্তিতে আপডেট হয়েছে ...

$http.get('/someUrl').
  success(function(data, status, headers, config) {
    // this callback will be called asynchronously
    // when the response is available
    console.log(headers()['Content-Range']);
  })
  .error(function(data, status, headers, config) {
    // called asynchronously if an error occurs
    // or server returns response with an error status.
  });





angular-http