Delphi Prism を使って HTTP 経由でデータを取得する方法

Delphi Prism 2010 を使い、HTTP 経由でデータを取得する方法についてのメモです。

いろいろ方法があるかと思いますが、.NET Framework の持つ System.Net 名前空間の WebRequest/WebResponse クラスを使うと簡単でした。

1点手間取った部分がありましたが・・

[code lang=’delphi’] var req : WebRequest := WebRequest.&Create(‘http://url.to/’);
var res : WebResponse := req.GetResponse;
var st : Stream := res.GetResponseStream;
if st <> nil then begin
var reader := new StreamReader(st, System.Text.Encoding.GetEncoding(‘文字コードの指定’));
//主処理
st.Close;
end;
[/code]

コードは至ってシンプルです。

WebRequest クラスで接続先を指定し、WebReposnse クラスにその結果を読み込ませます。
後は、受け取った結果を Stream として処理するだけです。

reader.ReadToEnd; で全部読み込んでも良いですし、reader.ReadLine; を while でループしても良いでしょう。

手間取った部分というのは、WebRequest クラスの Create コンストラクタの呼び出し方法です。
表示の通り、「&」がメソッド名の前に付いていますね。

これは、Delphi Prism の構文において、Create メソッドはコンストラクタの扱いになるのですが、.NET Framework 上では通常のメソッドとして扱われるので、その扱いの違いでエラーしてしまうんですね。

だから、「&Create」と書くことで、キーワードの扱いにしてあげているんです。

参考:Prism Wiki

本家でもここら辺で語られています。

10年集客し続けられるサイトを、ワードプレスで自作する9つのポイント プレゼント

【最後まで読んでくれたあなたに】

あなたは、24時間365日、自分の代わりに集客し続けてくれるWebサイトを作りたい!と思ったことはありませんか?

私はこれまで500以上のWebサイトの構築と運営のご相談に乗ってきましたが、Webサイトを作ってもうまく集客できない人には、ある一つの特徴があります。

それは、「先を見越してサイトを構築していないこと」です。
Webサイトで集客するためには、構築ではなく「どう運用するか」が重要です。

しかし、重要なポイントを知らずにサイトを自分で構築したり、業者に頼んで作ってもらってしまうと、あとから全く集客に向いていないサイトになっていたということがよく起こります。

そこで今回、期間限定で
『10年集客し続けられるサイトをワードプレスで自作する9つのポイント』
について、過去に相談に乗ってきた具体的な失敗事例と成功事例を元にしてお伝えします。

・ワードプレスを使いこなせるコツを知りたい!
・自分にピッタリのサーバーを撰びたい!
・無料ブログとの違いを知りたい!
・あとで悔しくならない初期設定をしておきたい!
・プラグイン選びの方法を知っておきたい!
・SEO対策をワードプレスで行うポイントを知りたい!
・自分でデザインできる方法を知りたい!

という方は今すぐ無料でダウンロードしてください。

期間限定で、無料公開しています。

※登録後に表示される利用条件に沿ってご利用ください

Delphi Prism を使って HTTP 経由でデータを取得する方法” に対して2件のコメントがあります。

  1. 月夜見命 より:

    ありますねー

    .NETは配列関連のメソッドで引数の仮変数名が array のものがあるのですが
    自分で配列関連のクラスライブラリ作る際にこの名前がキーワード判定されておかしなことになりました。

    これも&arrayで解決しましたが…w

  2. Kryu^2 より:

    >月夜見命さん
    コメントありがとうございます。

    この例もそうですが、元々違う仕様の言語をまとめるのって、大変なんだなぁって思いますね~

コメントを残す