0
我使用Builder來構建發送到WebService的XML消息。每種不同的方法都需要不同的xml,但它們都有一組通用的元素來開始請求(主要是賬戶認證的東西)。有沒有辦法以乾的方式做到這一點?這是我的用於構造變化通行短語請求代碼:Rails Builder :: Web服務的XmlMarkup - 重複部分
# XML REQUEST SETUP
msg = Builder::XmlMarkup.new(:indent=>2)
query = {}
test_hsh = self.testmode ? {:Test => "YES"} : {}
# BUILD THE REQUEST
query[:changePassPhraseRequestXML] = msg.ChangePassPhraseRequest(test_hsh) do |asr|
asr.RequesterID APP_CONFIG[:endicia_partner_id].to_s
asr.RequestID "1"
asr.CertifiedIntermediary do |ci|
ci.AccountID APP_CONFIG[:endicia_account_number].to_s
ci.PassPhrase APP_CONFIG[:endicia_passphrase].to_s
end
asr.NewPassPhrase APP_CONFIG[:passphrase].to_s
end
基本上除了NewPassPhrase一個所有元件是通用的所有(或大部分)的請求。現在我反覆複製相同的代碼,但我根本不喜歡這個。
任何想法乾涸?