2017-03-02 1 views
0

로컬로 저장하고 다른 세션에서 또는 브라우저를 닫고 모든 브라우저 데이터를 지운 후에 동적으로 가져올 수있는 데이터가 있습니다.http 서버와의 통신

http-server CLI 명령으로 사이트를 실행하고 localhost로 이동하여 브라우저에서 액세스합니다.

데이터를 서버 측에 보내 서버 측에서 데이터를 파일로 저장하려면 어떻게합니까?

콘솔에서 어떤 일이 발생했는지 확인하기 위해 아약스 게시물 요청을 시도했지만 콘솔에서 404가 반환되었고 아무 것도 콘솔에 표시되지 않았습니다.

워드 프로세서는 POST 요청에 대해 아무것도 언급하지 않습니다 https://www.npmjs.com/package/http-server

PS를 : 나는 HTTP 서버와이를 실행해야이 오프라인 프로젝트입니다.

+0

데이터베이스가 필요합니다 (아마도 몇 가지 noSQL 패키지로도 작업 할 수 있습니다. 세부 정보를 제공 할 정도로 익숙하지 않은 것 같습니다) – Alex

+0

httpserver에 게시 요청을 수락하고 파일을 아직 작성하는 기능이 있습니까? 그렇지 않다면, POST를 실제로 받아 들일 수 있기 전에 그것을 써야합니다. 그렇지 않으면 서버는 어떻게해야할지 모릅니다. – Shilly

+0

@Alex 데이터베이스없이 할 수 있습니까? 그냥 문자열을 보내고 파일에 저장 하시겠습니까? – shinzou

답변

4

http-server는 정적 컨텐츠 만 제공 할 수 있으며 서버 측에서 코드를 실행하는 데 사용할 수 없으므로 http-server만으로는이 작업을 수행 할 수 없습니다.

아마도 Express, Hapi, Restify, Loopback 등과 같은 프레임 워크를 사용하여 직접 백엔드를 작성해야하며 새 백엔드에서 필요한 정적 파일을 제공하거나 지금처럼 계속 제공해야합니다. 동일한 호스트 이름 및 포트에 모두 나타나게하는 역방향 프록시를 실행하지 않는 한 데이터를 저장/검색하는 엔드 포인트와 다른 정적 포트에 다른 포트를 사용하는 경우 CORS를 고려해야 할 것입니다.

파일 시스템을 사용하여 데이터를 저장하거나 데이터베이스 (Mongo 또는 Postgres와 같은 독립형 데이터베이스 또는 SQLite 또는 Loki와 같은 내장 데이터베이스)를 사용할 수 있습니다.

자신의 백엔드를 참조 정적 콘텐츠를 제공하는 방법에 대한 예는

:

1

당신은 이런 종류의 물건에 대한 express를 사용해야합니다. 특정 요청을 처리하는 메소드를 쉽게 만들 수 있습니다. 여기

그냥 일부 데이터
var express = require('express') 
var app = express() 

app.get('/', function (req, res) { 
    res.send('Hello World') 
}) 

app.listen(3000) 

을 보내
요청을받을 처리하고 데이터를 작성하는 노드 자체에서 fs API를 사용하는 방법에 exmaple입니다.

var fs = require('fs') 
fs.writeFile('message.txt', 'Hello Node.js', (err) => { 
    if (err) throw err; 
    console.log('It\'s saved!'); 
}); 

참고 : fs 예제는 화살표 기능을 사용합니다. 더 많은 정보를 찾을 수 있습니다 here

관련 문제