Movatterモバイル変換


[0]ホーム

URL:


WebAPIを駆使して東京電力使用状況メーターを作る!(Node.js版)

http://chalow.net/2011-04-02-1.html にかいてあるものを node.js にしてみた。

HTTPのリクエストにはhttps://github.com/driverdan/node-XMLHttpRequest を使用。node.js の HTTP クライアントライブラリは Furl::HTTP とおなじぐらい低レベルなので、ラッパーをかませないととてもつかえない。

var sys = require('sys');var XMLHttpRequest = require('xmlhttprequest').XMLHttpRequest;var APPID = 'APPID';var URL = 'http://setsuden.yahooapis.jp/v1/Setsuden/latestPowerUsage?appid=' + APPID;var xhr = new XMLHttpRequest();xhr.host = URL;xhr.onreadystatechange = function () {    if (this.readyState == 4) {        var body = this.responseText;        var usage = body.match(/<Usage.*?>(\d+)<\/Usage>/)[1];        var capacity = body.match(/<Capacity.*?>(\d+)<\/Capacity>/)[1];        var hour = body.match(/<Hour.*?>(\d+)<\/Hour>/)[1];        var rate = Math.ceil(usage / capacity * 100);        var graph_url = 'http://chart.apis.google.com/chart?chxt=x&chbh=a,4,5&chs=225x69'        +'&cht=bhs&chco=FFCC33,FF0000&chd=t:'+rate+'|'+(100 - rate)        +'&chtt=%E6%9D%B1%E4%BA%AC%E9%9B%BB%E5%8A%9B%E4%BD%BF%E7%94%A8%E7%8A%B6%E6%B3%81'        + hour + '%E6%99%82%E5%8F%B0&chts=676767,14.5';        sys.puts("Location " + graph_url + "\n\n");    } else {        // console.log("...");    }};xhr.open('GET', URL);xhr.send();

Published: 2011-04-04(Sun) 22:38


[8]ページ先頭

©2009-2025 Movatter.jp