C#でHTTPのGETアクセスとWebSocket 【やってみた】


今日は、C#でHTTPのGETアクセスとWebSocketによるデータ取得をやってみようかなと。

GETアクセスには、WebClientを使用。WebSocketには、WebSocket4Net(NuGetからパッケージ取得)を使用した。おまけで、Newtonsoft.Jsonのパッケージも利用している。

スポンサーリンク

HTTPのGETアクセス

ボタンが押されたらWebClientでJSONを取得する。

1回目のアクセスは時間かかるが2回目からは速い。

Environment.NewLineというのはWindowsだとCRLFになるようだ。最初、”\n”とか書いて改行されないので少々焦ったところだった。

WebSocket

C#のデフォルトのWebSocketは使いにくいらしく、WebSocket4Netというパッケージにした。C#のJSONも同様に使いにくいのだろうか?ということでNewtonsoft.Jsonを使った。

ソースコードはこんな感じ。

はまってしまった点は、まずは@paramsがなんなのかというところ(予約語回避の@らしい)。あとは、[email protected]をそのままDebug.WriteLineしようとするとエラーが出るところ・・・。

Microsoft.CSharp.RuntimeBinder.RuntimeBinderException: ‘条件付き属性があるため、メソッド ‘WriteLine’ を動的に呼び出すことはできません’

これが何を表しているのか、よくわからないけど、動的オブジェクトに対してWriteLineのメソッドのオーバーライドが合わない感じなんだろうか?

こんな感じにすれば問題なく動くっぽい。

スポンサーリンク
カテゴリー: やってみた   タグ: ,   この投稿のパーマリンク

コメントは受け付けていません。