Web API の進化

備忘録的に…

  1. (スクレイピング)
  2. HTTP API (URI + クエリパラメータ -> XMLやJSONレスポンス)
  3. 言語API (関数やメソッド, ライブラリ)
  4. ウィジェットAPI, ガジェットAPI (HTMLコード片)

Web APIの本質はHTTP APIであり, 言語APIはそれを隠蔽した関数やメソッド. ウィジェットAPIは言語APIを隠蔽したHTMLコード片です.

Google Translate APIはこの進化の過程をたどっている代表的なWeb APIです.

参考 パーフェクトJavaScript

npm install でのエラー

npm installで以下のようなエラーが出た場合の対処法

npm WARN locking Error: EACCES, open '/ホームディレクトリ/.npm/_locks/xsound-263d68595b18b348.lock'
npm WARN locking     at Error (native)
npm WARN locking  /ホームディレクトリ/.npm/_locks/xsound-263d68595b18b348.lock failed { [Error: EACCES, open '/ホームディレクトリ/.npm/_locks/xsound-263d68595b18b348.lock']
npm WARN locking   errno: -13,
npm WARN locking   code: 'EACCES',
npm WARN locking   path: '/ホームディレクトリ/.npm/_locks/xsound-263d68595b18b348.lock' }
npm ERR! Darwin 13.4.0
npm ERR! argv "node" "/usr/local/bin/npm" "install" "xsound"
npm ERR! node v0.12.1
npm ERR! npm  v2.7.3

npm ERR! Attempt to unlock /インストールディレクトリ, which hasn't been locked
npm ERR! 
npm ERR! If you need help, you may report this error at:
npm ERR!     <https://github.com/npm/npm/issues>

npm ERR! Please include the following file with any support request:
npm ERR!     /インストールディレクトリ/npm-debug.log
$ npm cache clean

これで解決するみたいです (参考).