0

ActiveResourceを使用してRailsアプリでRESTfulWCFサービスを利用しようとしています。

私のActiveResourceクラスは次のとおりです。

class PartReferenceService < ActiveResource::Base
    self.site = "http://localhost:1234/"
end

WCFのURLは

http://localhost:1234/PartReferenceService.svc/ 

そしてそれは次のようなXMLを返します:

<ArrayOfReferenceDataModel xmlns="http://schemas.datacontract.org/2004/07/RemoteService.Model" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
 <ReferenceDataModel>
  <Description>0460-0054</Description> 
  <Id>147</Id> 
  </ReferenceDataModel>
 <ReferenceDataModel>
  <Description>0960-0095</Description> 
  <Id>145</Id> 
  </ReferenceDataModel>
</ArrayOfReferenceDataModel>

次のようにすると404が発生します。

PartReferenceService.find(:all)

また、development.logファイルで要求されているURLが見つかりません。

私がどこで間違っているのかについての提案はありますか?私はActiveResourceとWCFにかなり慣れていませんが、ActiveResourceは次のようなURLを作成していると思います。

http://localhost:1234/part_reference_service/ 

しかし、ログには何も見えないので、私は盲目的に飛んでいます。

私は両端を管理しているので、必要な変更を加えることができます。

どんな助けでも大歓迎です。

4

2 に答える 2

0

ActiveResourceの最初のこと-常にActiveResource::Base.loggerを設定します。通常、構成ブロックの後に、environment.rbでActiveResource :: Base.logger = ActiveResource::Base.loggerを実行します。

ActiveResourceの2番目のこと-これはかなり恐ろしいライブラリです。特に、Railsによって生成されたもの(あなたが持っているようなWCFのものなど)以外のHTTP overXMLapiで使用する場合はそうです。私は自分自身の解決策を展開しました、おそらくあなたはそれを好きになるでしょう-それはWrestと呼ばれています。

于 2010-02-16T16:56:33.320 に答える
0

Fiddlerを使用して、http 要求で何が起こっているかを正確に確認します。

于 2009-06-24T12:47:21.267 に答える