Я использую приложение для запуска приложения Create-React-App, чтобы поиграть с ним. Я хочу проверить получение данных с помощью fetch узла, но он не работает. Я могу заставить его работать с аксиомами.React App fetch data using Node Fetch
Я получаю ошибку о том, что: Предупреждение в ./~/encoding/lib/iconv-loader.js критических зависимостей: 9: 12-34 запрос иждивенчества является выражением @ ./~ /encoding/lib/iconv-loader.js 9: 12-34
это, кажется, ошибка в webpack: ///./~/react-scripts/~/react-dev-utils/webpackHotDevClient.js ?
Я также получаю сообщение об ошибке: Не удалось загрузить ресурс: Net :: ERR_CONNECTION_TIMED_OUT и кажется, что выборки является добавление порта в URL при отправке запроса: http://codepen.io:3000/jobs.json
Код:
import React from 'react'
import NodeFetch from 'node-fetch'
class NodeFetchData extends React.Component {
constructor(props) {
super(props);
this.state = {
jobs: []
};
}
componentDidMount() {
NodeFetch('http://codepen.io/jobs.json')
.then(res => {
this.setState({ jobs:res.data.jobs });
});
}
render() {
return (
<div>
<ul>
{this.state.jobs.map(job =>
<li key={job.hashid}>{job.company_name}</li>
)}
</ul>
</div>
);
}
}
export default NodeFetchData;
Мое предположение, что вы выполняете политику [того же происхождения] (https://en.wikipedia.org/wiki/Same-origin_policy). По умолчанию большинство браузеров не разрешают JS-код на странице доступа к содержимому с другого происхождения. – Kryten