2013-07-12 45 views
1

我是node.js和Heroku的新手。我試圖從Heroku上的nodebeginner書籍中運行第一個示例server.js。爲server.js的代碼是從heroku上的nodebeginner書籍的server.js例子運行

var http = require("http"); 
http.createServer(function(request, response) { 
    response.writeHead(200, {"Content-Type": "text/plain"}); 
    response.write("Hello World"); 
    response.end(); 
}).listen(8888); 

部署在Heroku上server.js,我已經修改提供 https://devcenter.heroku.com/articles/nodejs

尤其是文件,我已經改變了文件的package.json到

{ 
    { 
     "name": "node-example", 
     "version": "0.0.1", 
     "dependencies": { 
     "http": "0.10.x"  <=== changed this line 
    }, 
     "engines": { 
     "node": "0.10.x", 
     "npm": "1.2.x" 
    } 
} 

然而,當我運行NPM安裝錯誤消息

npm WARN package.json [email protected] No repository field. 
npm WARN package.json [email protected] No readme data. 
npm http GET https://registry.npmjs.org/http 
npm http 404 https://registry.npmjs.org/http 
npm ERR! 404 'http' is not in the npm registry. 
npm ERR! 404 You should bug the author to publish it 
npm ERR! 404 
npm ERR! 404 Note that you can also install from a 
npm ERR! 404 tarball, folder, or http url, or git url. 
npm ERR! System Linux 3.2.0-40-virtual 
npm ERR! command "/usr/bin/node" "/usr/bin/npm" "install" 
npm ERR! cwd /home/ubuntu/nodebeginner 
npm ERR! node -v v0.10.12 
npm ERR! npm -v 1.2.32 
npm ERR! code E404 

那麼,我應該如何安裝包「http」http://nodejs.org/api/http.html#http_http 所以我可以在Heroku上使用它?非常感謝!

回答

1

您不需要將http依賴項添加到您的package.json文件---它已經是節點的一部分。

+0

非常感謝。在我刪除了package.json中的http依賴項之後,我可以將server.js推送到Heroku,並且不再有編譯錯誤。 – Riemann

+0

太棒了! Node Core中還有其他模塊,您不需要將其添加到「package.json」中:http://nodejs.org/api/index.html。順便說一句,如果這解決了你的問題,那麼習慣就是把這個標記爲正確答案;-)。 –

+0

@黎曼你應該把這個標記爲正確的答案。 – sennett