2014-03-31 49 views
0

我正在嘗試使用Restler版本控制,但有些東西我不明白。與Restler版本相關的處理

BMI example它撰文指出:

只有整數的版本支持。當沒有明確指定時,版本被假定爲一個。

但在你的例子中,v2是明確的指定如下:

$r->setAPIVersion(2); 

...和訪問/_011_versioning/bmi.json當默認版本仍然是V1!

所以我不明白,setAPIVersion()函數真的在做什麼?也許我錯過了一些文檔部分(我的英文不是那麼流利)

再次感謝您的快速和有效的支持(不是我第一次在這裏提問)。

回答

2
  • 通過調用setAPIVersion我們設置的最大API版本,我們支持
  • 我們要支持現有的API用戶提供了制動的應用程序,這就是爲什麼我們要爲版本1當API用戶沒有指定版本
  • 一旦用戶準備了API的用戶V2,他們將在網址爲V2請求由
    • 指定版本,如果我們支持基於URL的版本
    • 在標題中指定版本,如果我們支持供應商媒體類型(即i下一個例子)
+1

謝謝!完全如我所料! 另一個問題:你知道是否有辦法避免將所有類和函數設置爲「v1」或「v2」命名空間? 再次感謝您 – cocoggu

+0

默認情況下,所有類只屬於它們的版本。 RC5通過在iPAP中實現它來增加「iProvideMultiVersionApi」接口的正弦靈活性,您可以設置最大支持版本。因此,如果某個類的v1不需要更改v2,但需要v2 api,則可以使其可用 – Luracast