ReactJS

Форк
0
/
server.js 
38 строк · 980.0 Байт
1
import express from 'express';
2
import ReactDOM from 'react-dom/server';
3
import {indexTemplate} from "./indexTemplate";
4
import {App} from "../App";
5
import axios from "axios";
6

7
const app = express();
8

9
app.use('/static', express.static('./dist/client'));
10

11
app.get('/', (req, res) => {
12
  res.send(
13
    indexTemplate(ReactDOM.renderToString(App())),
14
  );
15
});
16

17
app.get('/auth', (req, res) => {
18
  axios.post(
19
    "https://www.reddit.com/api/v1/access_token",
20
    `grant_type=authorization_code&code=${req.query.code}&redirect_uri=http://localhost:3000/auth`,
21
    {
22
      auth: {username: process.env.CLIENT_ID, password: 'vIhiH8tfH_FOCA97OwPJ2ie4ZStDzg'},
23
      headers: {'Content-type': 'application/x-www-form-urlencoded'}
24
    }
25
  )
26
    .then(({data}) => {
27
      res.send(
28
        indexTemplate(ReactDOM.renderToString(App()), data['access_token']),
29
      );
30
    })
31
    .catch(console.error)
32

33

34
});
35

36
app.listen(3000, () => {
37
  console.log('Server started on http://localhost:3000');
38
});

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.