웹 프론트엔드 JS 튜토리얼 Mac OS_node.js에서 Node.js를 사용하는 방법에 대한 간단한 튜토리얼

Mac OS_node.js에서 Node.js를 사용하는 방법에 대한 간단한 튜토리얼

May 16, 2016 pm 03:53 PM
mac node

다음은 Node.js 훌륭한 nodejs 소개에 대한 좋은 입문 기사입니다. 이 기사에서는 Node.js와 CouchDB에 대해 매우 편리하게 소개하고 Perform CRUD를 위한 REST 서비스를 구현하는 예를 제공합니다. CouchDB를 데이터베이스로 사용하여 북마크에 대한 작업.

이 글에서는 Mac OS X에서 Node.js를 설치하고 시작하는 방법을 소개합니다. 이 과정도 CouchDB를 설치하고 CouchDB 기반의 REST API를 구현하는 데 약 30분 정도 소요됩니다.

이 글에서는 Git이 이미 컴퓨터에 설치되어 있다고 가정합니다. 그렇지 않은 경우 이 글을 참조하여 설치하세요.

node.js 및 npm 설치

가장 쉬운 방법은 nodejs 다운로드 섹션 페이지를 통해 node.js 공식 웹사이트로 이동하여 Mac에서 Node.js와 npm(노드 패키지 관리자)을 설치하는 설치 프로그램을 선택하는 것입니다. 🎜> 설치가 성공적으로 완료되면 node 및 npm 명령을 사용할 수 있습니다.

CouchDB 설치

이 글에서는 객체를 저장하기 위해 CouchDB가 필요하므로 CouchDB도 설치해야 합니다.

CouchDB 설치는 소스코드를 다운로드한 후 컴파일해야 하기 때문에 조금 더 번거롭습니다. 그 전에 Homebrew를 설치해야 합니다.



git clone https://github.com/mxcl/homebrew.git
cd homebrew/bin
brew install autoconf automake libtool
brew install couchdb
로그인 후 복사

중요 참고 사항: CouchDB는 이전에 설치를 방해할 수 있는 문제를 보고했습니다. 이 문제를 해결하려면 ~/couch/homebrew/Library/Formula/couchdb.rb 파일을 수동으로 편집해야 합니다.


코드 복사 코드는 다음과 같습니다.
'수식' 필요

클래스 Couchdb <수식
URL 'http://www.apache.org/dyn/closer.cgi?path=couchdb/source/1.1.1/apache-couchdb-1.1.1.tar.gz'
홈페이지 "http://couchdb.apache.org/"
md5 'cd126219b9cb69a4c521abd6960807a6'

최종 수정 결과는 다음과 같습니다.


코드 복사 코드는 다음과 같습니다.
'수식' 필요

클래스 Couchdb <수식
URL 'http://www.apache.org/dyn/closer.cgi?path=couchdb/1.1.1/apache-couchdb-1.1.1.tar.gz'
홈페이지 "http://couchdb.apache.org/"
md5 'cd126219b9cb69a4c521abd6960807a6'

설치 프로세스가 중단되면 CTRL-C를 눌러 종료하고 다음 명령을 실행하여 다시 시도해야 합니다.



코드 복사 코드는 다음과 같습니다.
./brew install -vuchdb

Mac OS X에 CouchDB 설치에 대한 자세한 내용은 "OSX에 CouchDB 설치"를 참조하세요.

CouchDB가 컴파일되면 ./couchdb를 수동으로 실행하여 시작할 수 있습니다. 브라우저에서 http://127.0.0.1:5984/_utils 주소를 열어 CouchDB 설치가 성공했는지 확인할 수 있습니다.

201562495503417.jpg (1009×575)

튜토리얼 다운로드

이제 필수 소프트웨어가 설치되었으므로 Node.js 소개 예시를 계속 진행하겠습니다.

먼저 Git을 사용하여 인스턴스 소스 코드를 얻습니다

git 클론 https://github.com/indexzero/nodejs-intro.git
CouchDB 데이터베이스 생성
튜토리얼을 시작하기 전에 먼저 CouchDB 데이터베이스를 생성해야 합니다. 먼저 CouchDB가 시작되었는지 확인한 후 다음 명령을 사용하여 데이터베이스를 생성해야 합니다.

$ 컬 -X PUT http://127.0.0.1:5984/pinpoint-dev10
{"알았어":사실}

브라우저에서 http://127.0.0.1:5984/_utils를 방문하면 새로 생성된 데이터베이스를 확인할 수 있습니다.

여기에는 CouchDB에 대한 훌륭한 가이드도 있습니다.

튜토리얼 시작

노드 js 인스턴스는 모듈식으로 구축됩니다. lib 디렉터리에는 많은 모듈이 포함되어 있으며 서버 스크립트는 bin 디렉터리에 있습니다.

예를 들어 CouchDB 튜토리얼을 시작하려면 bin 디렉터리에서 다음 명령을 실행할 수 있습니다.

./server -t 02couchdb -s

-t 매개변수를 사용하면 lib 디렉토리에 실행될 모듈을 지정할 수 있고, -s 매개변수는 방금 생성한 pinpoint-dev 데이터베이스를 설정하는 데 사용됩니다.

sys - 유틸리티 변경

Node.js 버전에 따라 다음과 같은 오류나 경고가 표시될 수 있습니다.

코드 복사 코드는 다음과 같습니다.
$ node -v
v0.7.7-pre

$ ./server -t 02couchdb -s

node.js:247
           e; // process.nextTick 오류 또는 첫 번째 틱에서 '오류' 이벤트 발생
              ^
오류: "sys" 모듈은 이제 "util"이라고 합니다.
sys.js:1:69
NativeModule.compile(node.js:572:5)
Function.require(node.js:540:18)
Function._load(module.js:297:25)
Module.require(module.js:357:17)
필요 시(module.js:373:17)
개체에서(/home/ubuntu/nodejs-intro/bin/server:3:11)
Module._compile(module.js:444:26)
Object..js에서(module.js:462:10)
Module.load에서(module.js:351:32)

이 문제를 방지하려면 모든 호출 `require("sys")`를 `require("util")`로 바꿔야 합니다

노드 v0.6.14에서는 오류 메시지가 표시되지 않지만 경고 메시지가 표시됩니다.

코드 복사 코드는 다음과 같습니다.
$ node -v
v0.6.14

$ ./server -t 02couchdb -s
"sys" 모듈은 이제 "util"이라고 불리며 비슷한 인터페이스를 갖습니다.
http://127.0.0.1:8000

에서 02couchdb를 수신하는 데모 서버를 찾아보세요.

튜토리얼 실행

튜토리얼을 실행하면 몇 가지 오류가 표시됩니다:


코드 복사 코드는 다음과 같습니다.
$ ./server 02couchdb
The "sys" module is now called "util". It should have a similar interface.

node.js:201
throw e; // process.nextTick error, or 'error' event on first tick
^
Error: Cannot find module 'optimist'
at Function._resolveFilename (module.js:332:11)
at Function._load (module.js:279:25)
at Module.require (module.js:354:17)
at require (module.js:370:17)
at Object. (/Users/ddewaele/Projects/Node/nodejs-intro/bin/server:5:12)
at Module._compile (module.js:441:26)
at Object..js (module.js:459:10)
at Module.load (module.js:348:31)
at Function._load (module.js:308:12)
at Array.0 (module.js:479:10)

该教程包含很多依赖,我们需要使用 npm 来下载这些依赖的包。

安装 node 包

Node packages (dependencies) 可通过 npm 命令来安装,例如:

$ npm install optimist
npm http GET https://registry.npmjs.org/optimist
npm http 200 https://registry.npmjs.org/optimist
npm http GET https://registry.npmjs.org/optimist/-/optimist-0.2.8.tgz
npm http 200 https://registry.npmjs.org/optimist/-/optimist-0.2.8.tgz
npm http GET https://registry.npmjs.org/wordwrap
npm http 200 https://registry.npmjs.org/wordwrap
npm http GET https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz
npm http 200 https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz
optimist@0.2.8 ../node_modules/optimist
└── wordwrap@0.0.2
로그인 후 복사


这些包将被安装到 node_modules 文件夹中:

$ ls -l ../node_modules/
total 0
drwxr-xr-x 10 ddewaele staff 340 Apr 1 18:54 optimist
로그인 후 복사


本文需要安装如下的 node 包:

npm install winston
npm install cradle
npm install journey
npm install optimist
로그인 후 복사

运行教程

进入 bin 目录,通过下面命令来运行教程:

$ ./server -t 02couchdb -s
The "sys" module is now called "util". It should have a similar interface.
Pinpoint demo server listening for 02couchdb on http://127.0.0.1:8000
로그인 후 복사

然后打开浏览器访问 http://127.0.0.1:8000/bookmarks ,将会看到如下的结果:

复制代码 代码如下:
{"bookmarks":[]}

这表示服务已经启动并运行,为了在 CouchDB 中添加点测试数据,我们可以使用 http-console 控制台来访问 CouchDB 的 REST 服务。

安装 http-console

有一个非常棒的工具可以帮助你调试服务,该工具名为 http-console ,你可使用 npm 来安装:

sudo npm install -g http-console
로그인 후 복사

然后就可以在命令行中执行该工具,不幸的是当我们执行该命令时报错了:

$ http-console
 
 
node.js:201
    throw e; // process.nextTick error, or 'error' event on first tick
       ^
Error: require.paths is removed. Use node_modules folders, or the NODE_PATH environment variable instead.
  at Function. (module.js:378:11)
  at Object. (/usr/local/lib/node_modules/http-console/bin/http-console:6:8)
  at Module._compile (module.js:441:26)
  at Object..js (module.js:459:10)
  at Module.load (module.js:348:31)
  at Function._load (module.js:308:12)
  at Array.0 (module.js:479:10)
  at EventEmitter._tickCallback (node.js:192:40)
로그인 후 복사


很麻烦,我们还需要手工编辑 /usr/local/lib/node_modules/http-console/bin/http-console 文件,然后删除下面这一行:

复制代码 代码如下:
require.paths.unshift(path.join(__dirname, '..', 'lib'));

现在 http-console 就可以启动了,无需任何参数,它将连接到 http://localhost:8080 ,如果你需要指定服务器和端口,把它作为第一个参数传递给 http-console 即可。

请注意我们这里使用了 \json 命令用来设置正确的 content-type:

$ http-console http://127.0.0.1:8000
The "sys" module is now called "util". It should have a similar interface.
> http-console 0.6.1
> Welcome, enter .help if you're lost.
> Connecting to 127.0.0.1 on port 8000.
 
http://127.0.0.1:8000/> \json
http://127.0.0.1:8000/>

로그인 후 복사

访问 REST 服务

在 http-console 中,要执行 GET 请求只需要输入 GET /bookmarks 即可:

http://127.0.0.1:8000/> GET /bookmarks
HTTP/1.1 200 OK
Date: Sun, 01 Apr 2012 17:23:27 GMT
Server: journey/0.4.0
Content-Type: application/json;charset=utf-8
Content-Length: 16
Connection: keep-alive
 
{
  bookmarks: []
}
로그인 후 복사


你也可以使用 JSON 的片段来执行 POST 请求:

http://127.0.0.1:8000/> POST /bookmarks
... { "url": "http://nodejs.org" }
HTTP/1.1 200 OK
Date: Thu, 05 Apr 2012 11:45:55 GMT
Server: journey/0.4.0
Content-Type: application/json;charset=utf-8
Content-Length: 91
Connection: keep-alive
 
{
  bookmark: {
    _id: 'WD-G-1',
    resource: 'Bookmark',
    url: 'http://nodejs.org'
  }
}
로그인 후 복사


然后再次执行 GET 请求,你就可以看到新插入的数据了:

http://127.0.0.1:8000/> GET /bookmarks
HTTP/1.1 200 OK
Date: Sun, 01 Apr 2012 17:23:27 GMT
Server: journey/0.4.0
Content-Type: application/json;charset=utf-8
Content-Length: 16
Connection: keep-alive
 
{
  bookmarks: [
    {
      _rev: '1-cfced13a45a068e95daa04beff562360',
      _id: 'WD-G-1',
      resource: 'Bookmark',
      url: 'http://nodejs.org'
    }
  ]
}
로그인 후 복사

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Mac 키보드에 비밀번호를 입력해도 응답이 없나요? Mac 키보드에 비밀번호를 입력해도 응답이 없나요? Feb 20, 2024 pm 01:33 PM

소개: 이 웹사이트에서는 비밀번호를 입력할 때 Mac 키보드가 응답하지 않는 것에 대한 관련 내용을 소개합니다. 도움이 되길 바랍니다. 살펴보겠습니다. Apple Mac 시스템에서 비밀번호를 입력할 수 없는 문제를 해결하는 방법 이 키보드를 다른 컴퓨터에 연결하여 정상적으로 작동하는지 확인할 수도 있습니다. 다른 컴퓨터에서도 같은 문제가 발생한다면 키보드 자체의 문제일 가능성이 높습니다. 키보드를 교체하거나 수리하는 것을 고려할 수 있습니다. Mac 컴퓨터로 처음으로 Alipay에 로그인하면 로그인 인터페이스가 나타나며 비밀번호를 입력할 수 없습니다. 비밀번호 입력 필드에는 "컨트롤을 설치하려면 여기를 클릭하십시오"가 표시되므로 Alipay 로그인에는 보안 컨트롤 설치가 필요합니다. 보안 통제는 귀하가 입력하는 정보(금액, 비밀번호 등)를 암호화하고 보호하여 계정 보안을 향상시킬 수 있습니다. 묶다

Mac 컴퓨터 이름, 호스트 이름, Bonjour 이름을 쉽게 사용자화하는 3가지 팁 Mac 컴퓨터 이름, 호스트 이름, Bonjour 이름을 쉽게 사용자화하는 3가지 팁 Mar 06, 2024 pm 12:20 PM

많은 Mac 사용자는 장치의 기본 이름을 유지하는 경향이 있으며 변경을 고려하지 않을 수도 있습니다. 많은 사람들이 초기 설정에서 "Johnny's MacBook Air" 또는 간단히 "iMac"과 같은 이름을 고수하는 것을 선택합니다. Mac의 이름을 변경하는 방법을 배우는 것은 특히 여러 장치를 사용하는 경우 장치를 빠르게 구별하고 관리하는 데 도움이 되므로 매우 유용한 기술입니다. 다음으로 macOS 시스템에서 컴퓨터 이름, 호스트 이름, Bonjour 이름(로컬 호스트 이름)을 변경하는 방법을 단계별로 알려드리겠습니다. Mac 이름을 변경해야 하는 이유는 무엇입니까? Mac의 이름을 변경하면 개성을 보여줄 수 있을 뿐만 아니라 사용자 경험을 개선하는 데에도 도움이 됩니다. Mac을 개인화하세요. 기본 이름이 마음에 들지 않을 수 있으므로 원하는 이름으로 변경하세요.

Mac 설치 프로그램 비밀번호를 잊으셨나요? Mac 설치 프로그램 비밀번호를 잊으셨나요? Feb 20, 2024 pm 01:00 PM

소개: 이 웹사이트에서는 Mac 설치 프로그램의 비밀번호를 잊어버린 경우에 대한 내용을 소개합니다. 도움이 되기를 바랍니다. 살펴보겠습니다. Apple 컴퓨터 설치 소프트웨어의 비밀번호를 잊어버린 경우 수행할 작업 먼저 휴대폰 설정에서 iCloud를 찾아 클릭하여 엽니다. 다음으로 계좌번호와 비밀번호를 입력해주세요. 로그인 버튼 아래에 ID나 비밀번호를 잊어버린 경우 묻는 작은 단어가 있습니다. 이 옵션을 클릭하세요. 일반적으로 로그인 인터페이스에 잘못된 비밀번호를 여러 번 입력하면 MacBook Pro에 바인딩된 Apple ID를 사용하여 비밀번호를 재설정하라는 메시지가 표시됩니다. 비밀번호 재설정을 완료하려면 시스템에서 안내하는 단계를 따르기만 하면 됩니다. 3. 먼저 Mac을 종료한 다음, 전원 버튼을 누른 상태에서 즉시 키보드의 com을 길게 누르세요.

Apple Mac에서 입력할 때 페이지를 넘기는 방법은 무엇입니까? Apple Mac에서 입력할 때 페이지를 넘기는 방법은 무엇입니까? Feb 20, 2024 pm 12:54 PM

소개: 오늘 이 사이트는 Apple Mac에서 타이핑할 때 페이지를 넘기는 방법에 대한 관련 콘텐츠를 공유합니다. 현재 직면한 문제를 해결할 수 있다면 이 사이트를 팔로우하고 지금 시작하는 것을 잊지 마세요! Apple MacBook 노트북에서 터치패드 사용에 대한 팁 Apple 컴퓨터에서 두 손가락 슬라이딩을 설정하는 단계는 다음과 같습니다. 컴퓨터 바탕 화면에서 "설정" 아이콘을 찾아 클릭합니다. 설정 인터페이스에서 "터치패드"를 선택한 다음 "확대/축소 스크롤"을 클릭하세요. 스크롤 줌 옵션에서 '스크롤 방향: 자연'을 체크하면 설정이 완료됩니다. Apple 컴퓨터에서 두 손가락 스와이프 방법을 설정하는 것은 쉽습니다. 먼저 컴퓨터를 켜고 화면 상단의 설정 아이콘을 클릭하세요. 설정 인터페이스에서 "터치패드" 옵션을 선택하세요. 그런 다음 "스크롤 확대/축소"를 클릭하고 "스크롤 방향"이 선택되어 있는지 확인하세요.

pkg 파일을 Mac에 설치하시겠습니까? pkg 파일을 Mac에 설치하시겠습니까? Feb 20, 2024 pm 03:21 PM

서문: 오늘 이 사이트는 Mac에 pkg 파일을 설치하는 것과 관련된 내용을 공유합니다. 현재 직면한 문제를 해결할 수 있다면 이 사이트를 팔로우하고 지금 시작하는 것을 잊지 마세요! 운영 체제를 업그레이드하기 위해 이전 버전의 macos pkg를 설치할 수 없습니다. 노트북이 이전 운영 체제 버전을 사용하고 있는 경우 최신 운영 체제 버전으로 업그레이드하는 것이 좋습니다. 이전 버전은 최신 macOS 시스템 설치를 지원하지 않을 수 있기 때문입니다. 디스크 유틸리티에서 "삭제"를 선택한 다음 형식에서 Macos 확장자를 선택하고 암호화 옵션을 확인하지 않으며 apfs 형식을 선택하지 않고 마지막으로 "삭제" 버튼을 클릭하여 완료할 수 없는 문제를 해결합니다. macOS 설치. 애플리케이션 아이콘을 App으로 시작하는 파일로 드래그하세요.

음성 메시지를 텍스트로 자동 변환하도록 WeChat Mac을 설정하는 방법 - 음성을 텍스트로 변환하도록 설정하는 방법 음성 메시지를 텍스트로 자동 변환하도록 WeChat Mac을 설정하는 방법 - 음성을 텍스트로 변환하도록 설정하는 방법 Mar 19, 2024 am 08:28 AM

최근 일부 친구들이 음성 메시지를 텍스트로 자동 변환하도록 WeChat Mac을 설정하는 방법에 대해 편집자에게 문의했습니다. 다음은 음성 메시지를 텍스트로 자동 변환하도록 WeChat Mac을 설정하는 방법입니다. 1단계: 먼저, Mac 버전의 WeChat을 엽니다. 그림에 표시된 대로: 2단계: 다음으로 "설정"을 클릭합니다. 그림에 표시된 대로: 3단계: 그런 다음 "일반"을 클릭합니다. 그림에 표시된 대로: 4단계: 그런 다음 "채팅 음성 메시지를 텍스트로 자동 변환" 옵션을 선택합니다. 그림과 같이: 5단계: 마지막으로 창을 닫습니다. 그림과 같이:

vmmac 가상 머신 전체 화면(가상 머신 macos를 전체 화면으로 표시하는 방법) vmmac 가상 머신 전체 화면(가상 머신 macos를 전체 화면으로 표시하는 방법) Feb 20, 2024 pm 01:15 PM

머리말: 많은 친구들이 vmmac 가상 머신의 전체 화면에 대해 질문했습니다. 이 기사가 귀하의 참고에 도움이 되길 바랍니다. 한 번 보자! Mac 가상 머신 Overwatch에는 화면상의 이유가 없습니다: 그래픽 카드 호환성 문제. 오버워치를 정상적으로 실행했는데 지금은 검은색 화면이 나타나는 경우 그래픽 드라이버 결함이 원인일 수 있습니다. 해결책: 그래픽 카드가 게임 요구 사항을 지원하는지 확인하십시오. 그래픽 카드 드라이버를 업데이트하세요. 두 번째 가능성을 배제하려면 다른 전원 공급 장치를 사용해 보십시오. 콘덴서가 부풀어 오르지 않았는지(고장났을 수 있음), 마더보드 표면에 눈에 띄는 손상이 있는지, 회로 중단을 일으키는지 등 마더보드에 이상이 없는지 확인하십시오. 검사를 위해 마더보드를 수리 센터로 보내는 것이 좋습니다. 조건이 허락한다면 다른 마더보드로 교체하는 것을 고려할 수 있습니다.

Mac에서 HEIC 사진을 JPG로 변환하는 3가지 방법 Mac에서 HEIC 사진을 JPG로 변환하는 3가지 방법 Mar 15, 2024 pm 08:43 PM

기본적으로 iPhone은 카메라에서 HEIC 형식으로 사진을 찍습니다. HEIC는 고효율 이미지 컨테이너(High Efficiency Image Container)를 의미하며 PNG 또는 JPG 파일보다 더 많은 픽셀 데이터를 저장할 수 있어 다른 형식에 비해 iPhone 저장 공간을 훨씬 적게 차지합니다. 이러한 파일은 iPhone에서 가장 잘 작동하지만 Apple 이외의 장치와 공유할 때 사진이 흐리거나 거친 결과를 낳는 경우가 많기 때문에 인터넷에서는 널리 받아들여지지 않습니다. HEIC 이미지가 다른 장치에서 호환되는지 확인하려면 해당 이미지를 JPG 형식으로 변환해야 할 수도 있습니다. 이 기사에서는 Mac에서 HEIC 이미지를 JPG로 변환하는 방법을 소개합니다. Mac에서 HEIC 사진을 JPG로 변환하는 방법 [3가지 방법]

See all articles