मैं fetch
प्रोडक्ट हंट एपीआई की जानकारी हड़पने के लिए रिएक्ट नेटिव में इस्तेमाल करने की कोशिश कर रहा हूं । मैंने उचित एक्सेस टोकन प्राप्त कर लिया है और इसे राज्य में सहेज लिया है, लेकिन GET अनुरोध के लिए प्राधिकरण शीर्षलेख के भीतर इसे पास करने में सक्षम नहीं लगता।
यहाँ मेरे पास अभी तक क्या है:
var Products = React.createClass({
getInitialState: function() {
return {
clientToken: false,
loaded: false
}
},
componentWillMount: function () {
fetch(api.token.link, api.token.object)
.then((response) => response.json())
.then((responseData) => {
console.log(responseData);
this.setState({
clientToken: responseData.access_token,
});
})
.then(() => {
this.getPosts();
})
.done();
},
getPosts: function() {
var obj = {
link: 'https://api.producthunt.com/v1/posts',
object: {
method: 'GET',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json',
'Authorization': 'Bearer ' + this.state.clientToken,
'Host': 'api.producthunt.com'
}
}
}
fetch(api.posts.link, obj)
.then((response) => response.json())
.then((responseData) => {
console.log(responseData);
})
.done();
},
मेरे कोड के लिए मुझे जो उम्मीद है वह निम्नलिखित है:
- सबसे पहले, मैं
fetch
अपने आयातित एपीआई मॉड्यूल से डेटा के साथ एक एक्सेस टोकन लूंगा - उसके बाद, मैं प्राप्त टोकन के बराबर
clientToken
संपत्ति सेट करूंगाthis.state
। - फिर, मैं चलाऊंगा
getPosts
जो उत्पाद हंट से वर्तमान पोस्ट की एक सरणी युक्त प्रतिक्रिया वापस करना चाहिए।
मैं यह सत्यापित करने में सक्षम हूं कि टोकन प्राप्त हो रहा है और वह this.state
इसे अपनी clientToken
संपत्ति के रूप में प्राप्त कर रहा है । मैं यह सत्यापित करने में भी सक्षम हूं कि getPosts
चलाया जा रहा है।
मैं जो त्रुटि प्राप्त कर रहा हूं वह निम्नलिखित है:
{"त्रुटि": "अनधिकृत_आयुथ", "error_description": "कृपया एक वैध पहुंच टोकन की आपूर्ति करें। हमारे एपीआई दस्तावेज को देखें कि कैसे एक एपीआई अनुरोध को अधिकृत किया जाए। कृपया यह भी सुनिश्चित करें कि आपको सही लिंक की आवश्यकता है। उदाहरण के लिए \" निजी सार्वजनिक \ " "निजी समापन बिंदु तक पहुँचने के लिए।"
मैं इस धारणा से काम कर रहा हूं कि मैं किसी तरह अपने ऑथराइजेशन हेडर में ठीक से एक्सेस टोकन के साथ नहीं गुजर रहा हूं, लेकिन ऐसा बिल्कुल नहीं लग पा रहा है।