我需要一個功能,可以細化amazonica的sqs/receive-message
以添加默認的等待時間。該函數需要一個隊列URL,然後接受任意數量的可選命名參數,這些參數應該一直傳遞到sqs/receive-message
。我想這樣稱呼它:在Clojure中委託代理命名參數的習慣方式
(my-receive-message "https://sqs.us-east-1.amazonaws.com/123/test-q"
:max-number-of-messages 10
:delete true)
這將導致調用sqs/receive-message
這樣的:
(sqs/receive-message :queue-url "https://sqs.us-east-1.amazonaws.com/123/test-q"
:wait-time-seconds 20
:max-number-of-messages 10
:delete true)
這是我多麼希望自己相當經常做的,但我避風港」 t找到了一個不錯的方法呢。有沒有一種慣用的方式來做到這一點?
破壞args params怎麼樣?此外,您可能想要合併其他方式,因此my-receive-message的調用者可以覆蓋默認的等待 – DanLebrero
謝謝 – DanLebrero
取得的點數![url] {:as args}](避免應用哈希映射參數) –