2014-02-12 159 views
1

我已經爲Amazon Route53設置了一個適當的請求來創建新的資源記錄。這工作完美無瑕。無法使用Route53更新記錄API

但是,現在我想簡單地更改該記錄的值。當我再次使用新值進行同樣的請求時,出現以下消息的異常。

試圖創建資源記錄集[名稱= 'my.test.domain。',類型= 'A'] 但它已經存在

在這兩個請求,我給自己定了Action參數爲CREATE作爲唯一替代方法是DELETE

我使用PHP SDK的changeResourceRecordSets方法,開始它的描述就像...

使用此動作創建或更改您的權威DNS 信息。

其他地方,Amazon Web Services的文檔中,我也發現下面的代碼片段...

如果資源記錄集不存在,亞馬遜路線53個更新它 請求中的值。僅當所有以下值匹配時,Amazon Route 53才能更新現有的 資源記錄集:名稱, 類型和SetIdentifier(用於延遲,加權和故障轉移資源 記錄集)。

這是否意味着我需要參數SetIdentifier?我沒有,因爲這些是延遲,加權或故障轉移記錄。還是那些可以像這樣更新的唯一記錄?

回答

3

答案是使用UPSERT操作。這個動作沒有記錄在PHP SDK中,但確實存在。

UPSERT將更新記錄(如果存在),或者如果不存在則創建它。