メインコンテンツまでスキップ

XMLHttpRequestをもっと便利につかえるようになるであろうresponseType属性について

Yamagishi Kazutoshi
Software Developer

XMLHttpRequest Level 2のWorking DraftにはresponseTypeという属性があります。この属性に'json'という値を代入することにより、req.send()を実行したのちに、response属性にあたかもJSON.parse(req.responseText)としたかのようなobjectがいれられるようになります。readyState属性の値がXMLHttpRequest.DONE (4) になった段階でresponseTextをパースするようなコードを書けば良い話ではあるのですが、コードの短縮化簡潔化をはかれて多くの人はしあわせになれるのではないでしょうか。この記事を執筆している段階では当該仕様はWorking Draftであり、実装もまだFirefoxでしかおこなわれていないようです (Opera 12.00以降でも対応しているそうです) が、とても便利につかえそうなものなので今後 多くの環境で実装されることをねがいたいものですね。

W3Cによる仕様に沿わせてNodeで動作するXMLHttpRequestを作成してみました

Yamagishi Kazutoshi
Software Developer

W3Cによる仕様に沿わせてNodeで動作するXMLHttpRequestを作成してみました。HTTPによる情報のやり取りを行い情報の授受を行う際には多くの場合はNodeに標準で備わっているhttpモジュールだけで事足りてしまいます。また XMLHttpRequestを模倣したNode向けライブラリは他者によって作られた物がnpm上へと既に用意されております。そのため、車輪の再開発も甚しいのですが、私自身のXMLHttpRequestへの理解度を確認するためにあえて作ってみました。途中で妥協してしまっている箇所が幾つか有るのですがそこはつまり私が理解出来ていない部分という事になります。そうした点を重点的に学習して行けば今後の助けになるのでは無いかと期待しています。

nginxで既存のHTTPヘッダーを上書きして送出する方法

Yamagishi Kazutoshi
Software Developer

nginxで任意のHTTPヘッダーを追加したい場合にはadd_headerディレクティブを用いますが、add_headerディレクティブは追加しようとしたフィールド名が重複するHTTPヘッダーが既に用意されていた場合には既にある物に「,」区切りで連結してしまいます。たとえば強制的に出力するContent-Typeを変更するためにadd_header Content-Type text/css;のようにしてもContent-Type: text/html, text/cssといった形の不正なHTTPヘッダーが出力されてしまいます。