国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

在MacOS下使用Node.js的簡單教程_node.js

來源:懂視網(wǎng) 責(zé)編:小采 時間:2020-11-27 21:39:53
文檔

在MacOS下使用Node.js的簡單教程_node.js

在MacOS下使用Node.js的簡單教程_node.js:這里有一篇很好的 Node.js 介紹文章 great nodejs intro ,它將給你一個非常方便的介紹 Node.js 和 CouchDB,并給出一個實例實現(xiàn) REST 的服務(wù)用于執(zhí)行書簽的 CRUD 操作,使用 CouchDB 作為數(shù)據(jù)庫。 本文將介紹在 Mac OS X 下安裝并開始使用 No
推薦度:
導(dǎo)讀在MacOS下使用Node.js的簡單教程_node.js:這里有一篇很好的 Node.js 介紹文章 great nodejs intro ,它將給你一個非常方便的介紹 Node.js 和 CouchDB,并給出一個實例實現(xiàn) REST 的服務(wù)用于執(zhí)行書簽的 CRUD 操作,使用 CouchDB 作為數(shù)據(jù)庫。 本文將介紹在 Mac OS X 下安裝并開始使用 No
這里有一篇很好的 Node.js 介紹文章 great nodejs intro ,它將給你一個非常方便的介紹 Node.js 和 CouchDB,并給出一個實例實現(xiàn) REST 的服務(wù)用于執(zhí)行書簽的 CRUD 操作,使用 CouchDB 作為數(shù)據(jù)庫。

本文將介紹在 Mac OS X 下安裝并開始使用 Node.js ,這個過程大概需要 30 分鐘左右的時間,其中我們還將安裝 CouchDB,并實現(xiàn)基于 CouchDB 的 REST API。

本文假設(shè)你機器上已經(jīng)裝有Git,如果還沒有,請參考此文進行安裝。

安裝 node.js 和 npm

最簡單的方法是在 node.js 的官網(wǎng)上通過 the nodejs download section 頁面并選擇 Mac 下的安裝程序,它將在你的機器上安裝 Node.js 和 npm (node package manager).
安裝成功后你就可以使用 node 和 npm 命令了。

安裝 CouchDB

因為本文需要使用 CouchDB 來存儲對象,因此還需要安裝 CouchDB.

安裝 CouchDB 稍微麻煩一些,因為我們需要下載源碼然后編譯I,在此之前需要先安裝 Homebrew ,請執(zhí)行以下命令:

git clone https://github.com/mxcl/homebrew.git
cd homebrew/bin
brew install autoconf automake libtool
brew install couchdb


重要的提示:CouchDB 之前報出一個問題可能會阻止你安裝,要修復(fù)這個問題需要手工編輯 ~/couch/homebrew/Library/Formula/couchdb.rb 文件,編輯內(nèi)容如下:

代碼如下:require 'formula'

class Couchdb < Formula
url 'http://www.apache.org/dyn/closer.cgi?path=couchdb/source/1.1.1/apache-couchdb-1.1.1.tar.gz'
homepage "http://couchdb.apache.org/"
md5 'cd126219b9cb69a4c521abd6960807a6'


請注意需要將 url 中的 source 刪除,最終修改結(jié)果如下:

代碼如下:require 'formula'

class Couchdb < Formula
url 'http://www.apache.org/dyn/closer.cgi?path=couchdb/1.1.1/apache-couchdb-1.1.1.tar.gz'
homepage "http://couchdb.apache.org/"
md5 'cd126219b9cb69a4c521abd6960807a6'

如果安裝過程被掛起了,你需要 CTRL-C 終止并執(zhí)行下面命令重試:

代碼如下:./brew install -v couchdb

更多關(guān)于 Mac OS X 上安裝 CouchDB 的信息請閱讀 "Installing CouchDB on OSX".

一旦 CouchDB 編譯完成,我們可以手工執(zhí)行 ./couchdb 來啟動它,你可以在瀏覽器中打開 http://127.0.0.1:5984/_utils 這個地址以驗證 CouchDB 安裝是否成功。

201562495503417.jpg (1009×575)

下載教程

現(xiàn)在所需的軟件都已經(jīng)安裝完成,我們接下來繼續(xù) Node.js 的介紹實例。

首先我們使用 Git 來獲取實例源碼

git clone https://github.com/indexzero/nodejs-intro.git
創(chuàng)建 CouchDB 數(shù)據(jù)庫
在開始教程之前我們需要創(chuàng)建一個 CouchDB 數(shù)據(jù)庫,先確保 CouchDB 已經(jīng)啟動,然后使用如下命令創(chuàng)建數(shù)據(jù)庫:

$ curl -X PUT http://127.0.0.1:5984/pinpoint-dev10
{"ok":true}

你可以在瀏覽器中訪問 http://127.0.0.1:5984/_utils 就可以看到新創(chuàng)建的數(shù)據(jù)庫。

這里還有一個非常棒的 CouchDB 的指南。

開始教程

node js 實例使用模塊化的方式構(gòu)建,lib 目錄包含很多模塊,而服務(wù)器腳本在 bin 目錄下。

例如,我們要啟動 CouchDB 教程,可以在 bin 目錄下執(zhí)行下面命令:

./server -t 02couchdb -s

其中 -t 參數(shù)允許你指定要執(zhí)行的 lib 目錄下的模塊,-s 參數(shù)用以設(shè)置我們剛建立的 pinpoint-dev 數(shù)據(jù)庫。

sys - util 變化

根據(jù) Node.js 的版本不同,你可能會看到如下的錯誤或者是警告:

代碼如下:$ node -v
v0.7.7-pre

$ ./server -t 02couchdb -s

node.js:247
throw e; // process.nextTick error, or 'error' event on first tick
^
Error: The "sys" module is now called "util".
at sys.js:1:69
at NativeModule.compile (node.js:572:5)
at Function.require (node.js:540:18)
at Function._load (module.js:297:25)
at Module.require (module.js:357:17)
at require (module.js:373:17)
at Object. (/home/ubuntu/nodejs-intro/bin/server:3:11)
at Module._compile (module.js:444:26)
at Object..js (module.js:462:10)
at Module.load (module.js:351:32)

為了避免這個問題,你需要將所有調(diào)用 `require("sys")` 替換成 `require("util")`

Node v0.6.14 不會拋出錯誤信息,但會提示警告:

代碼如下:$ node -v
v0.6.14

$ ./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

運行教程

當(dāng)你運行某個教程時,會提示一些錯誤:


代碼如下:$ ./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 ,將會看到如下的結(jié)果:

代碼如下:{"bookmarks":[]}

這表示服務(wù)已經(jīng)啟動并運行,為了在 CouchDB 中添加點測試數(shù)據(jù),我們可以使用 http-console 控制臺來訪問 CouchDB 的 REST 服務(wù)。

安裝 http-console

有一個非常棒的工具可以幫助你調(diào)試服務(wù),該工具名為 http-console ,你可使用 npm 來安裝:

sudo npm install -g http-console

然后就可以在命令行中執(zhí)行該工具,不幸的是當(dāng)我們執(zhí)行該命令時報錯了:

$ 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'));

現(xiàn)在 http-console 就可以啟動了,無需任何參數(shù),它將連接到 http://localhost:8080 ,如果你需要指定服務(wù)器和端口,把它作為第一個參數(shù)傳遞給 http-console 即可。

請注意我們這里使用了 \json 命令用來設(shè)置正確的 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 服務(wù)

在 http-console 中,要執(zhí)行 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 的片段來執(zhí)行 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'
 }
}


然后再次執(zhí)行 GET 請求,你就可以看到新插入的數(shù)據(jù)了:

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'
 }
 ]
}

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

在MacOS下使用Node.js的簡單教程_node.js

在MacOS下使用Node.js的簡單教程_node.js:這里有一篇很好的 Node.js 介紹文章 great nodejs intro ,它將給你一個非常方便的介紹 Node.js 和 CouchDB,并給出一個實例實現(xiàn) REST 的服務(wù)用于執(zhí)行書簽的 CRUD 操作,使用 CouchDB 作為數(shù)據(jù)庫。 本文將介紹在 Mac OS X 下安裝并開始使用 No
推薦度:
標(biāo)簽: 教程 在mac 的教程
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 久久成人精品 | 国产三级一区 | 黄色a免费 | 久久99精品一久久久久久 | 日韩最新视频一区二区三 | 国产一区二区三区久久精品 | 99久久精品免费 | 国产播放器一区 | 免费观看日韩大尺码观看 | 国产亚洲一区二区三区啪 | 久久国产精品最新一区 | 日本不卡一二三区 | 国产成人欧美一区二区三区的 | 永久在线毛片免费观看 | 香蕉久久一区二区三区 | 欧美成人精品一区二区三区 | 久久伊人一区二区三区四区 | 国产播放器一区 | 国产午夜免费视频 | 九九久久亚洲综合久久久 | 精品国产亚洲一区二区三区 | 久久久久久91 | 国产美女视频黄a视频免费全过程 | 国产精品久久久久国产精品 | 国产精品1区2区3区在线播放 | 久久国产精品最新一区 | 国产麻豆久久 | 久久不射网 | 亚洲欧洲精品成人久久曰影片 | 美日韩中文字幕 | 中文一区| 亚洲逼院 | 国产在线观看入口 | 在线 v亚洲 v欧美v 专区 | 91福利国产在线观一区二区 | 国产欧美一区二区精品性色99 | 福利视频一区二区牛牛 | 日韩欧美高清在线 | 二区在线播放 | 人人爽人人草 | 欧美在线综合 |