2011-12-21 11 views
5

私は、DelphiプログラムがRoRサービスと通信できるようにする方法を探していました。 SOAPライブラリを使用して、例えばActionWebServiceというSOAPサービスを提供することができます。これをDelphiプログラムで使用できます。DelphiクライアントでActiveResource/ActiveRecordに接続

しかし、これはすべてのActiveRecordメソッド(例:find)を何度も何度も再実装する必要があります。たとえ委任方法だけであっても、これは面倒です。

誰かがもっと簡単で簡単な方法を知っていますか?

答えて

0

RoRでは、RESTとMVCのデザインパターンを使用するため、HTTPクライアントとXMLまたはJSONライブラリのみが必要です。 どのように動作するかを理解するためにこのビデオを見ることをお勧めします。 http://www.youtube.com/watch?v=YCcAE2SCQ6k

既存のコントローラーを使用し続けることができ、あなただけのJSONデータを取得する代わりにHTMLデータを投稿し、代わりの.htmlの.json追加するには、「Content-Typeの」HTTPヘッダーに「アプリケーション/ JSONを」配置する必要があります。

+0

私はそれがRESTとMVCを使用していることを知っています。しかし、私が探しているのは、SOAPのバインディングのようなものですが、ActiveRecord/ActiveResourceのバインディングのようなものです。 –

1

このようなバインディングはありません。RESTはプロトコルではなく、httpを介した慣習です。 私はJava用のactiveresourceポートについて知っていますhttp://jactiveresource.org/しかし、そのようなデルファイのためのものはありません。しかし、jactiveresourceのソースを見て、独自の機能を開発することができます。しかし、残りのクライアントを作成して、必要なメソッドでラップして、応答をオブジェクトに直列化しないようにすることもできます。 ここに短い例がありますhttp://dn.embarcadero.com/article/40449

+0

ありがとうございます。これは実際にRESTクライアントを構築する方法を示しています。しかし、私はあなたが言及したJActiveResourceのようなものを持っていることで仕事を節約することに興味があります。 –

+0

申し訳ありませんが、私はdelphiのためのそのような解決策も聞いていませんでした。とにかく、幸運! – Fivell

関連する問題