我正在使用Create-React-App启动器应用程序来玩弄反应。我想测试使用节点获取获取数据,但它似乎不起作用。我能够使它与axios一起工作。React应用程序使用节点提取获取数据
我得到一个错误,大意是:警告在./~/encoding/lib/iconv-loader.js 临界依赖性: 9:12-34依赖性的请求是一个表达式 @ ./~ /encoding/lib/iconv-loader.js 9:12-34
它似乎是在webpack中的错误:///./~/react-scripts/~/react-dev-utils/webpackHotDevClient.js ?
我也得到一个错误,指出:无法加载资源:净:: ERR_CONNECTION_TIMED_OUT,它看起来像取发送请求时,附加的端口的网址: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