XMLHttpRequest মডিউলটি সংজ্ঞায়িত / পাওয়া যায় নি


93

এটি আমার কোড:

var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;
var xhr = new XMLHttpRequest();
xhr.open("GET", "//URL")
xhr.setRequestHeader("Content-Type: application/json", "Authorization: Basic //AuthKey");
xhr.send();

আমি ত্রুটি পাচ্ছি:

Cannot find module 'xmlhttprequest'

আমি যখন প্রথম লাইনটি সরিয়ে ফেলি, তখন আমি পাচ্ছি:

XMLHttpRequest is not defined

আমি সর্বত্র অনুসন্ধান করেছি এবং লোকেরা নোড.জেজে সমস্যাগুলি এখানে এবং সেখানে উল্লেখ করেছে তবে আমার নোডের ইনস্টলেশন সঠিক ছিল তাই সমস্যাটি কী তা আমি নিশ্চিত নই।

উত্তর:


150

এক্সএমএলএইচটিপিআরকোয়েস্ট ওয়েব ব্রাউজারগুলির একটি অন্তর্নির্মিত অবজেক্ট ।

এটি নোড দিয়ে বিতরণ করা হয় না; আপনাকে এটি আলাদাভাবে ইনস্টল করতে হবে ,

  1. এটি এনপিএম সহ ইনস্টল করুন,

    npm install xmlhttprequest
    
  2. এখন আপনি requireআপনার কোড এ এটি করতে পারেন ।

    var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;
    var xhr = new XMLHttpRequest();
    

বলেছিল যে, এইচটিপি মডিউল নোড থেকে এইচটিটিপি অনুরোধ করার জন্য অন্তর্নির্মিত সরঞ্জাম।

অ্যাক্সিয়োস এইচটিটিপি অনুরোধ করার জন্য একটি গ্রন্থাগার যা এই দিনগুলিতে খুব জনপ্রিয় নোড এবং ব্রাউজারগুলির জন্য উপলব্ধ।


4
'xMLhttprequest' আমার পক্ষে কাজ করে নি। আমার স্ক্রিপ্টটির কাজ করতে আমাকে নীচের পোস্ট থেকে 'xhr2' ব্যবহার করতে হয়েছিল। স্ক্রিপ্টটি নতুন গুগল ক্রোমের সাথে সামঞ্জস্যপূর্ণ - অ্যারেবফার হিসাবে প্রতিক্রিয়া লোড করে: "xhr.responseType = 'অ্যারেবুফার';"
জেরজিএসবিজি

21

যেহেতু xMLhttprequest মডিউলটির সর্বশেষ আপডেটটি প্রায় 2 বছর আগে ছিল , কিছু ক্ষেত্রে এটি প্রত্যাশার মতো কাজ করে না।

সুতরাং পরিবর্তে, আপনি xhr2 মডিউলটি ব্যবহার করতে পারেন । অন্য কথায়:

var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;
var xhr = new XMLHttpRequest();

হয়ে:

var XMLHttpRequest = require('xhr2');
var xhr = new XMLHttpRequest();

তবে ... অবশ্যই, আরও রয়েছে অ্যাকসিওসের মতো জনপ্রিয় মডিউল , কারণ-উদাহরণ হিসাবে- প্রতিশ্রুতি ব্যবহার করে:

// Make a request for a user with a given ID
axios.get('/user?ID=12345').then(function (response) {
    console.log(response);
}).catch(function (error) {
    console.log(error);
});

2

সঙ্গে xhr2 গ্রন্থাগার আপনি কি অভাররাইট বিশ্বব্যাপী করতে XMLHttpRequestআপনার জাতীয় কোড থেকে। এটি আপনাকে নোডে বাহ্যিক গ্রন্থাগারগুলি ব্যবহার করতে দেয়, যা ব্রাউজারগুলি থেকে চালানো / ধরে নেওয়া উচিত যে তারা ব্রাউজারে চালিত হয়েছে।

global.XMLHttpRequest = require('xhr2');
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.