Javascript-форум (https://javascript.ru/forum/)
-   Node.JS (https://javascript.ru/forum/node-js-io-js/)
-   -   сохранение данных на локальном компьютере (https://javascript.ru/forum/node-js-io-js/58666-sokhranenie-dannykh-na-lokalnom-kompyutere.html)

inflexible 03.10.2015 17:39

сохранение данных на локальном компьютере
 
помогите, очень срочно нужно :(

в общем нужно правильно написать сохранение данных в файл на локальном компьютере! то есть есть одностраничное приложение которое читает файл с данными, обрабатывает их и пересохраняет! не совсем понимаю как использовать ноджс с клиентским кодом!
долго игрался и так и не смог решить задачу!

sortarray 03.10.2015 18:23

var fs = require("fs")
fs.readFile("file1", "utf8", function(err, data){
  if(err) return console.log(err)
  // do something with data
  fs.writeFile("file2", data)
})

inflexible 03.10.2015 19:59

да я знаю как читать! а вот как применить вопрос! написать код и запустить нодой - с этим проблем нету! проблема в том что оно должно работать когда запускается приложение app.html! вот тут именно я и понимаю что не понимаю как оно работает((

вот создаю отдельный жс файл, засовываю туда этот код... подключаю в html? или что с ним делать?!
или подключать этот файл как модуль через require?!

напишите плиз более подробно пошагово! буду признателен! добра всем!! :)

sortarray 03.10.2015 21:14

судя по всему, ты далек еще. Я тебе приведу самый элементарный код твоего "приложения", дальше постепенно разберешься, читай доки.

Создай в одной папке 3 файла, file.html, file.js и server.js. Последний -- это твой серверный скрипт. в первых 2 - х пиши любой клиентский код, как обычно, в файле file.html подключишь file.js -- <script src = "file.js"></script>. В в server.js пишешь
var fs = require("fs")
var http = require("http")

http.Server(function(request, response){
    fs.readFile(request.url.replace(/\//, ""), "utf8", function(err, data){
      if(err) return console.log(err)
      response.write(data)
      response.end()
    })
}).listen(yourPort)// тут твой номер порта


Вообще это не совсем правильно, конечно, просто чтобы ты понял, как все работает.
Запускай этот скрипт, затем иди в браузер, набирай адрес вида yourhost:yourport/file.html, например, localhost:8888/file.html и смотри.

inflexible 03.10.2015 21:23

спасибо, буду читать разбираться!

inflexible 03.10.2015 21:38

слушай, а вот еще такой вопрос! а вот если я закидывают проект на локальный сервер, то что нужно сделать чтоб серверный файл работал? прописать в файле тот же самый порт что и в локального сервера?

sortarray 03.10.2015 21:42

inflexible,
Этот скрипт server.js, это и есть твой сервер. Чтобы он заработал, надо его просто запустить.

sortarray 03.10.2015 21:47

inflexible,
А порт можешь указать любой свободный, на локальной машине обычно указывают из четырехзначного диапазона, нпример, 8888

inflexible 03.10.2015 22:10

я понимаю что этот скрипт как бы и есть сервер, просто если проект будет закидываться на какой-то хостинг, то зачем нам тогда этот сервер на ноде?

sortarray 03.10.2015 22:28

inflexible,
Ищи хостинг с поддержкой ноды или покупай vps


Часовой пояс GMT +3, время: 04:24.