নোড.জেএস-এ অনুরোধ মডিউল সহ ডেটা পোস্ট করুন


137

এই মডিউলটি হল 'অনুরোধ https://github.com/mikeal/request

আমি মনে করি আমি প্রতিটি পদক্ষেপ অনুসরণ করছি তবে আমি একটি যুক্তি অনুপস্থিত ..

var request = require('request');
request.post({
        url: 'http://localhost/test2.php',
         body: "mes=heydude"
         }, function(error, response, body){
            console.log(body);
    });

অন্য প্রান্তে আমার আছে

echo $_POST['mes'];

এবং আমি জানি পিএইচপি ভুল নয় ...


http.requestসরাসরি ব্যবহার করবেন না কেন ? আমার অনুভূতি আছে যে শরীরের মতো ক্যোরিস্ট্রিং প্যারামিটারে মানচিত্র নেই। চেষ্টা করুনurl: 'http://localhost/test2.php?mes=heydude'
রায়নস

উত্তর:


200

সম্পাদনা: আপনার সুই পরীক্ষা করা উচিত । এটি আপনার জন্য এটি করে এবং মাল্টিপার্ট ডেটা এবং আরও অনেক কিছু সমর্থন করে।

আমি বুঝতে পেরেছিলাম আমি একটি শিরোনাম অনুপস্থিত

var request = require('request');
request.post({
  headers: {'content-type' : 'application/x-www-form-urlencoded'},
  url:     'http://localhost/test2.php',
  body:    "mes=heydude"
}, function(error, response, body){
  console.log(body);
});

6
JSON.stringifyআপনি যদি প্রেরণ করছেন তবে আপনার ডেটা মনে রাখবেন'content-type': 'application/json'
ডেরেক সোইক

77

requestকোনও পোষ্ট পোস্টের জন্য ব্যবহার করার সময় আপনি এইভাবে প্যারামিটার যুক্ত করতে পারেন:

var request = require('request');
request.post({
  url:     'http://localhost/test2.php',
  form:    { mes: "heydude" }
}, function(error, response, body){
  console.log(body);
});

42

আমাকে ফর্ম ছাড়াই মূল মান জোড় পোস্ট করতে হয়েছিল এবং আমি নীচের মত সহজেই এটি করতে পারি:

var request = require('request');

request({
  url: 'http://localhost/test2.php',
  method: 'POST',
  json: {mes: 'heydude'}
}, function(error, response, body){
  console.log(body);
});

36

আপনি যদি কোনও জসন বডি পোস্ট করছেন তবে formপ্যারামিটারটি ব্যবহার করবেন না । ব্যবহার formকরা হলে অ্যারেগুলিকে তৈরি করবে field[0].attribute, field[1].attributeইত্যাদি পরিবর্তে এর bodyমতো ব্যবহার করুন ।

var jsonDataObj = {'mes': 'hey dude', 'yo': ['im here', 'and here']};
request.post({
    url: 'https://api.site.com',
    body: jsonDataObj,
    json: true
  }, function(error, response, body){
  console.log(body);
});

"jsonDataObj" অবশ্যই স্ট্রিংফাইড করতে হবে (JSON.stringify (...)) অন্যথায় এটি ক্র্যাশ হয়ে গেছে
ডাক্তার

আপনি যদি এটি স্ট্রাইফ করেন তবে আসলে আমার ক্র্যাশ। এটি সম্ভবত নির্ভর করবে যে কীভাবে গ্রহণযোগ্য সার্ভার সেট আপ হয়।
অ্যান্ড্রু

1
আপনার উত্তরের জন্য ধন্যবাদ. আমি এর জন্য ডকটি কোথায় পাব? যেহেতু আমি পোস্টের পদ্ধতিতে সন্দেহ করেছি, তবে গিথুবে ডক এই সমস্যাটি সমাধান করার পক্ষে যথেষ্ট নয়।
স্কাই

16
var request = require('request');
request.post('http://localhost/test2.php', 
    {form:{ mes: "heydude" }}, 
    function(error, response, body){
        console.log(body);
});

11
  1. ব্যবহার করে অনুরোধ মডিউল ইনস্টল করুন npm install request

  2. কোডে:

    var request = require('request');
    var data = '{ "request" : "msg", "data:" {"key1":' + Var1 + ', "key2":' + Var2 + '}}';
    var json_obj = JSON.parse(data);
    request.post({
        headers: {'content-type': 'application/json'},
        url: 'http://localhost/PhpPage.php',
        form: json_obj
    }, function(error, response, body){
      console.log(body)
    });

জসন স্ট্রিংয়ের ত্রুটিগুলি বাদ দিয়ে, এইটি আমার জন্য কৌশলটি করেছে! নোট করুন যে "ফর্ম" বিভাগটিতে এটিতে একটি বস্তু পাস হয়েছে, সুতরাং আপনি কেবল সেখানে শুরু করার জন্য এবং সেই প্রস্তুতিমূলক কাজটি না করার জন্য একটি অজানা হিসাবে সমস্ত কিছু সংজ্ঞায়িত করতে পারেন
rgbflawed 21

0

কোডের একটি POSTপদ্ধতি থেকে আমাকে ডেটা পেতে হবে PHP। আমার জন্য যা কাজ করেছিল তা হ'ল:

const querystring = require('querystring');
const request = require('request');

const link = 'http://your-website-link.com/sample.php';
let params = { 'A': 'a', 'B': 'b' };

params = querystring.stringify(params); // changing into querystring eg 'A=a&B=b'

request.post({
  headers: { 'Content-Type': 'application/x-www-form-urlencoded' }, // important to interect with PHP
  url: link,
  body: params,
}, function(error, response, body){
  console.log(body);
});

-2

আমি অক্ষরে অক্ষরে https://www.npmjs.com/package/axios এটিকে এনপিএম বা সুতার সাথে ইনস্টল করার পরামর্শ দিচ্ছি

const axios = require('axios');

axios.get('http://your_server/your_script.php')
    .then( response => {
    console.log('Respuesta', response.data);
    })
    .catch( response => {
        console.log('Error', response);
    })
    .finally( () => {
        console.log('Finalmente...');
    });
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.