如何使用一个包罗万象的React应用程序来制作服务器端请求(API)?

时间:2017-09-03 03:56:36

标签: javascript reactjs redux react-router react-redux

我反应/减少相对较新,我遇到了问题。

比如说我想搜索一个项目。

export default function getSearchItems(itemName) {
  return dispatch => {
    // Show that it is requesting, will be updated after.
    dispatch(requestItems(itemName));
    // URL todo.
    return fetch('/search')
    .then(
      response => response.json(),
      error => dispatch(requestItemsFailure(itemName))
    ).then(
      json => dispatch(requestItemsSuccess(itemName, json))
    );
  };
}

我在这里向网址/搜索发出了请求。但是因为我选择使用React Router v4的客户端路由,所以我在服务器端做了这个。

// Manage Routes
app.get('/*', function (req, res) {
  res.sendFile(path.resolve(__dirname + '/../build/index.html'));
});

// Search Grab data
app.get('/search', function (req, res) {
  console.log('hit');
  res.status(200).json(
    {item:"test"}
  );
});

因为我使用了#34; catch-all"这里描述的方法in this stackoverflow post,我再也不能做像" / login"并让它立即转到正确的组件。

如何让两者正常合作?

0 个答案:

没有答案