Показать сообщение отдельно
  #2 (permalink)  
Старый 30.11.2018, 16:31
Аватар для SuperZen
Профессор
Отправить личное сообщение для SuperZen Посмотреть профиль Найти все сообщения от SuperZen
 
Регистрация: 08.11.2017
Сообщений: 642

оп оп, узнаю свои писули )...
server.js
var express = require('express')
var app = express()
var fs = require('fs')
var path = require('path')

app.get('/', function (req, res) {
  res.sendFile(path.join(__dirname, '/index.html'))
})

app.get('/createDirectory/:dirname', function (req, res) {
  try {
    fs.mkdirSync(path.join(__dirname, req.params.dirname))
    res.send(JSON.stringify({ created: 'success' }))
  } catch (error) {
    res.send(JSON.stringify({ created: `failed ${error.message}` }))
  }
})

app.listen(4000, function () {
  console.log('started at http://localhost:4000')
})


index.html
<html>

<head>
  <script>
    document.addEventListener('DOMContentLoaded', function () {
      document.getElementById('createDirectory').addEventListener('click', function (e) {
        fetch(`/createDirectory/${document.getElementById('dirname').value}`).then(r => r.json()).then(r => {
          alert(r.created)
        })
      })
    })
  </script>
</head>

<body>
  <h1>Expressed</h1>
  <hr />
  <div id="status"></div>
  <hr />
  <input id="dirname" placeholder="Введите название папки" type="text" />
  <button id="createDirectory">Создать папку</button>
</body>

</html>


чтобы POST засылать, надо в fetch указать method, и на стороне сервера нужен bodyparser...
Ответить с цитированием