আমি কৌণিক.জেএস এর জন্য একজন নবজাতক এবং আমি একটি অনুরোধে কিছু শিরোনাম যুক্ত করার চেষ্টা করছি:
var config = {headers: {
'Authorization': 'Basic d2VudHdvcnRobWFuOkNoYW5nZV9tZQ==',
'Accept': 'application/json;odata=verbose'
}
};
$http.get('https://www.example.com/ApplicationData.svc/Malls(1)/Retailers', config).success(successCallback).error(errorCallback);
আমি সমস্ত ডকুমেন্টেশন দেখেছি এবং এটি আমার কাছে মনে হচ্ছে এটি সঠিক হওয়া উচিত।
আমি যখন URL এর জন্য একটি স্থানীয় ফাইল ব্যবহার করি, তখন আমি $http.get
Chrome এ নেটওয়ার্ক ট্যাবে নিম্নলিখিত HTTP অনুরোধটি দেখতে পাই:
GET /app/data/offers.json HTTP/1.1
Host: www.example.com
Connection: keep-alive
Cache-Control: max-age=0
If-None-Match: "0f0abc9026855b5938797878a03e6889"
Authorization: Basic Y2hhZHN0b25lbWFuOkNoYW5nZV9tZQ==
Accept: application/json;odata=verbose
X-Requested-With: XMLHttpRequest
If-Modified-Since: Sun, 24 Mar 2013 15:58:55 GMT
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22
X-Testing: Testing
Referer: http://www.example.com/app/index.html
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
আপনি দেখতে পাচ্ছেন, উভয় শিরোনামই সঠিকভাবে যুক্ত হয়েছিল। তবে আমি যখন $http.get
উপরে বর্ণিত একটিতে URL টি পরিবর্তন করি (প্রকৃত ঠিকানা ব্যবহার করা ছাড়া, উদাহরণ.কম) না, তখন আমি পাই:
OPTIONS /ApplicationData.svc/Malls(1) HTTP/1.1
Host: www.datahost.net
Connection: keep-alive
Access-Control-Request-Method: GET
Origin: http://mpon.site44.com
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22
Access-Control-Request-Headers: accept, origin, x-requested-with, authorization, x-testing
Accept: */*
Referer: http://mpon.site44.com/app/index.html
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
এই দুটির মধ্যে কোডের মধ্যে কেবলমাত্র পার্থক্য হ'ল প্রথম URL টি একটি স্থানীয় ফাইল এবং দ্বিতীয়টির জন্য URL টি একটি দূরবর্তী সার্ভার। আপনি যদি দ্বিতীয় অনুরোধ শিরোনামের দিকে তাকান তবে কোনও প্রমাণীকরণ শিরোনাম নেই এবং উপস্থিতগুলি Accept
নির্দিষ্ট বর্ণিত পরিবর্তে একটি ডিফল্ট ব্যবহার করছে বলে মনে হয়। এছাড়াও, প্রথম লাইনটি এখন (যদিও এটি ) এর OPTIONS
পরিবর্তে বলে ।GET
Access-Control-Request-Method
GET
উপরের কোডটিতে কী সমস্যা আছে বা কোনও ডেটা উত্স হিসাবে স্থানীয় ফাইল ব্যবহার না করার সময় অতিরিক্ত শিরোনামকে কীভাবে অন্তর্ভুক্ত করা যায় সে সম্পর্কে কোনও ধারণা?