2016-02-01 23 views
6

मुझे FETCH का उपयोग करते समय समस्याएं आ रही हैं।प्रतिक्रिया मूल - प्राप्त करें POST अनुरोध GET अनुरोध के रूप में भेज रहा है

मैं प्रतिक्रिया-मूल में FETCH का उपयोग करके एक POST अनुरोध करने का प्रयास कर रहा हूं।

fetch("http://www.example.co.uk/login", { 
     method: 'POST', 
     headers: { 
      'Accept': 'application/json', 
      'Content-Type': 'application/json' 
     }, 
     body: JSON.stringify({ 
      username: 'test', 
      password: 'test123', 
     }) 
    }) 

     .then((response) => response.json()) 
     .then((responseData) => { 
      console.log(
       "POST Response", 
       "Response Body -> " + JSON.stringify(responseData) 
      ) 
     }) 
     .done(); 
} 

जब मैं इस कॉल चार्ल्स का उपयोग कर इसे GET अनुरोध और उपयोगकर्ता नाम और पासवर्ड है कि शरीर में होना चाहिए के रूप में दर्ज की गई है का निरीक्षण नहीं हैं।

enter image description here

किसी को भी इस मुद्दे के साथ मदद कर सकते हैं?

उत्तर

2

मुझे एक ही तरह का मुद्दा था। आपको ऑब्जेक्ट असाइन करना होगा, सुनिश्चित नहीं है कि क्यों।

विकल्प = {};

विकल्प.body = formdata;

विकल्प.हेडर = हेडर;

options.method = 'post';

+1

इससे कोई फर्क नहीं पड़ता। इसका परिणाम उसी वस्तु में होगा .. – Tieme

+0

शायद यह ES6 की इस नई सुविधाओं से विवादित हो सकता है? http://www.2ality.com/2011/11/keyword-parameters.html – Kokizzu

3

यह मेरे लिए काम किया:

let data = { 
    method: 'POST', 
    credentials: 'same-origin', 
    mode: 'same-origin', 
    body: JSON.stringify({ 
    appoid: appo_id 
    }), 
    headers: { 
    'Accept':  'application/json', 
    'Content-Type': 'application/json', 
    'X-CSRFToken': cookie.load('csrftoken') 
    } 
} 
return fetch('/appointments/get_appos', data) 
     .then(response => response.json()) // promise 
     .then(json => dispatch(receiveAppos(json))) 
} 
3

मैं इस मुद्दे था जब पोस्ट अनुरोध एक HTTPS सर्वर (http के बजाय) के लिए किया गया था। किसी कारण से, यह कहीं भी जीईटी अनुरोध में परिवर्तित हो जाएगा।

यह पता चला कि मैं गलत तरीके से क्या कर रहा था http://myserver.com:80 पर https://myserver.com:443 के बजाय अनुरोध भेज रहा था। एक बार जब मैंने इसे उचित उपसर्ग और बंदरगाहों पर स्विच कर दिया, तो अनुरोध ठीक से एक पोस्ट के रूप में भेजा जाएगा।

+0

वही बात होती थी। –

संबंधित मुद्दे