2009-08-02 50 views
0

Flex3 + Cairngorm。我有我的服務Servicis.mxml:將參數傳遞給HTTPService並在URL內使用它們

<mx:HTTPService id="docIndex" url="{URL_PREFIX}/jobs/{???}/docs" resultFormat="e4x"/> 

而且我把它從我一般寧靜的委託是這樣的:

public function index(params:Object):void { 
     var call:AsyncToken = services.getHTTPService(resourceName+"Index").send(params); 
     call.addResponder(responder); 
    } 

我想知道我怎麼可以使用params對象我通過內部url定義(上面的???)。並請告訴我你將如何在文檔中搜索這個答案,我想在這些問題上多一些獨立...

編輯:我會解釋我自己,如果你沒有理解我的問題: 我有一個用軌道編寫的,我正在連接的restful api。 Doc是Job的子資源。如果我想獲得所有文檔,我也必須提供job_id。因此,在服務中,必須爲每個.send()調用更改url,並使用正確的job_id(上面的???部分)。我想將其稱爲myDelegate.index({job_id:34}),並將該job_id字段插入服務URL中。

+0

這真的不是很明顯,你在這裏尋找什麼樣的行爲。你能否澄清一下{???}與params對象的內容有什麼關係?不是如何做到這一點,因爲這是你首先帶到這裏的原因,但是原因。 – 2009-08-02 11:42:43

+0

好的:我有一個用我連接的rails寫的restful api。 Doc是Job的子資源。如果我想獲得所有文檔,我也必須提供job_id。因此,在服務中,必須爲每個.send()調用更改url,並使用正確的job_id(???部分)。 我想將它稱爲myDelegate.index({job_id:34}),並將該job_id字段插入到服務URL中。 現在更清楚了嗎? – luca 2009-08-02 12:08:10

回答

0

編寫一個擴展HTTPService的類,並允許您將參數設置到url中。然後,在您的索引函數中,您可以使用services.getHTTPService獲取它,然後調用您創建的函數來爲您設置url值。

在你的服務定位器中創建你的類的一個實例,而不是一個平坦的HTTPService。