質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
HTTP

HTTP(Hypertext Transfer Protocol)とはweb上でHTML等のコンテンツを交換するために使われるアプリケーション層の通信プロトコルです。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

1回答

1066閲覧

POSTメゾットとGETメゾットを実装しよう。としたけどエラーがでる。

satuki_2525

総合スコア11

HTTP

HTTP(Hypertext Transfer Protocol)とはweb上でHTML等のコンテンツを交換するために使われるアプリケーション層の通信プロトコルです。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2018/09/07 07:44

編集2018/09/07 07:54

'use strict';
const http = require('http');
const server = http.createServer((req, res) => {
const now = new Date();
console.info('[' + now + '] Requested by ' + req.connection.remoteAddress);
res.writeHead(200, {
'Content-Type': 'text/plain; charset=utf-8'
});
switch(req.method){
case 'GET':
res.write('GET ' + req.url);
break;
case 'POST':
res.write('POST '+ req.url);
let body = [];
req.on('data', (chunk) => {
body.push(chunk);
}).on('end', () => {
console.log(Buffer.concat(body));
body = Buffer.concat(body).toString();
console.info('[' + now + '] Data posted: ' + body);
});
break;
defalut:
break;
}
res.end();
}).on('error', (e) => {
console.error('[' + new Date() + '] Server Error', e);
}).on('clientError', (e) => {
console.error('[' + new Date() + '] ClientError', e);
});
const port = 8000;
server.listen(port, () => {
console.info('[' + new Date() + '] Listening on' + port);
});

##########################################################

Terminalにて tumuxを起動後.

node index.jsを起動。

[Fri Sep 07 2018 16:39:51 GMT+0900 (JST)] Server Error { Error: listen EADDRINUSE :::8000
at Object._errnoException (util.js:1022:11)
at _exceptionWithHostPort (util.js:1044:20)
at Server.setupListenHandle [as _listen2] (net.js:1351:14)
at listenInCluster (net.js:1392:12)
at Server.listen (net.js:1476:7)
at Object.<anonymous> (/home/satuki/workspace/node-js-http-3013/index.js:34:8)
at Module._compile (module.js:643:30)
at Object.Module._extensions..js (module.js:654:10)
at Module.load (module.js:556:32)
at tryModuleLoad (module.js:499:12)
code: 'EADDRINUSE',
errno: 'EADDRINUSE',
syscall: 'listen',
address: '::',
port: 8000 }

とエラーが出ました。

修正が箇所は。

const port = 8000;
server.listen(port, () => {
console.info('[' + new Date() + '] Listening on' + port);
});
この部分らしいんですが、私にはわかりません(´;ω;`)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yambejp

2018/09/07 07:51

node.jsは専用のカテゴリがあります
guest

回答1

0

ベストアンサー

あなたが8000番ポートで通信を待ち受けるプログラムを起動しようとしたところ、
そのポートは既に他のプログラムで使われていました。
というエラーです。

「他のプログラム」を停止するか、8000番を変更してみてください。

投稿2018/09/07 07:53

taka-saan

総合スコア665

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問