-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathssrRequest.js
52 lines (52 loc) · 1.69 KB
/
ssrRequest.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
// import React from 'react';
// import { renderToString } from 'react-dom/server';
// import { StaticRouter } from 'react-router-dom';
// import { Provider } from 'react-redux';
// import { renderRoutes } from 'react-router-config';
// import serialize from 'serialize-javascript';
// import { Helmet } from 'react-helmet';
// import { matchRoutes } from 'react-router-config';
//
// const pkg_json = require('./package.json');
// const turbo = require('turbo360')({ site_id: pkg_json.app });
// import createStore from './src/stores';
// import routes from './src/routes';
//
// function ssrRequest(req, res, resource) {
// turbo
// .fetch(resource, null)
// .then(data => {
// let initial = {};
// initial[resource] = { all: data };
// const store = createStore.configure(initial);
// const context = {};
//
// if (context.url) {
// return res.redirect(301, context.url); // redirect for non auth users
// }
//
// if (context.notFound) {
// res.status(404); // set status to 404 for unknown route
// }
// const content = renderToString(
// <Provider store={store}>
// <StaticRouter location={req.url} context={context}>
// {renderRoutes(routes)}
// </StaticRouter>
// </Provider>
// );
//
// const helmet = Helmet.renderStatic();
// const initialState = serialize(store.getState());
//
// res.render('index', { content, initialState, helmet });
// })
// .catch(err => {
// res.json({
// confirmation: 'fail',
// message: err.message
// });
// });
// }
//
// module.exports = ssrRequest;