Я сталкиваюсь с постоянной проблемой при разработке в ReactJS, которая заключается в том, что мои вызовы API приводят к 400 ошибкам Bad Request, хотя код отлично работает вне ReactJS.
Ниже приведен (A) код, который отлично работает локально на NodeJS, и (B) тот же код в среде React. (Зависимости были установлены в обоих случаях.) Код (A) NodeJS работает отлично, но код (B) React выдает ошибку:
Не удалось загрузить https://api.twitter.com/oauth2/token?grant_type=client_credentials: ответ на предварительную проверку имеет недопустимый код состояния HTTP 400.
(A) Код, выполняемый в Node.js:
var getBearerToken = require('get-twitter-bearer-token')
var Twitter = require('twitter');
var key = ENV.KEY;
var secret = ENV.SECRET;
getBearerToken(key, secret, (err, res) => {
if (err) {
// handle error
} else {
var client = new Twitter({
bearer_token: res.body.access_token,
});
client.get('search/tweets', {q: '#WorldCup'}, function(error, tweets, response) {
console.log(tweets);
});
}
})
(B) Точно такой же код запускается в ReactJS:
import React, { Component } from 'react';
var getBearerToken = require('get-twitter-bearer-token')
var Twitter = require('twitter');
export default class StockTwitter extends Component {
componentDidMount() {
this.setTwitter();
}
setTwitter() {
var key = ENV.KEY;
var secret = ENV.SECRET;
getBearerToken(key, secret, (err, res) => {
if (err) {
// handle error
} else {
var client = new Twitter({
bearer_token: res.body.access_token,
});
client.get('search/tweets', {q: '#WorldCup'}, function(error, tweets, response) {
console.log(tweets);
});
}
})
}
render() {
return (
<div>TBD</div>
)
}
}
fetch
- person Proximo   schedule 17.06.2018