Help us understand the problem. What is going on with this article?

Node.jsでHTTP GETしてJSONパースするメモ

More than 3 years have passed since last update.

あけましておめでとうございます。

Node.js HTTP GETなんか検索したら、自分が学生の時に書いていた記事がヒットして、間違い見つけて修正したかったのでES2015な感じにしつつなメモ。

EXPRESS(NODE.JS)でHTTP.GETでJSONを取得してパースする
↑すでにログイン情報忘れてて修正できない

Node.jsのバージョン

$ node -v
v5.3.0

Qiitaの記事のjsonを取得してパースします。

@kazuhikoyamashitapyenvを利用してPython環境を整備する方法をたまたまタブで開いていたので使ってみます。

Qiitaは記事のURL+.jsonってつけるとjsonを返してくれますね。
http://qiita.com/kazuhikoyamashita/items/273692ccbdf8c0950a71.json

app.js
'use strict'

let http = require('http');
const URL = 'http://qiita.com/kazuhikoyamashita/items/273692ccbdf8c0950a71.json';

http.get(URL, (res) => {
  let body = '';
  res.setEncoding('utf8');

  res.on('data', (chunk) => {
      body += chunk;
  });

  res.on('end', (res) => {
      res = JSON.parse(body);
      console.log(res);
  });
}).on('error', (e) => {
  console.log(e.message); //エラー時
});

実行

$ node app.js
{ id: 352559,
  user_id: 41823,
  title: 'pyenvを利用してPython環境を整備する方法',
  raw_body: 'LIGアドベントカレンダー15日目です!こんにちは、Jack (@kazuhikoyamashita) です。\n\n最近の趣味はPythonで行列計算をする事です。\n今回は、pyenvを利用してPython環境を構築する
  ・
  ・
  (省略)
  ・
  ・
  uuid: '273692ccbdf8c0950a71',
  secret: false,
  lang: 0,
  via: 0,
  tweet: false,
  gist: false,
  gist_url: null,
  gist_id: null,
  banned: false,
  created_at: '2015-12-15T00:57:02.000+09:00',
  updated_at: '2015-12-15T06:01:51.000+09:00',
  flags: 0 }

こんな感じでJSONを取得することができました。
ライブラリ依存も無いし最低限のスニペットな感じですね。

n0bisuke
プロトタイピング専門スクール「プロトアウトスタジオ」で教えたりしてます。 プロフ -> https://dotstud.io/members/n0bisuke
https://protoout.studio
dotstudio
全ての人がモノづくりを楽しむ世界を目指して活動しています。
https://dotstud.io
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした