Archived
Merge pull request #41 from beatz174-bit/codex/fix-dynu-dns-record-update-error-fs7zsn
Use POST for DNS record updates and align tests/fake server
This commit is contained in:
@@ -216,7 +216,7 @@ func (c *Client) CreateDNSRecord(ctx context.Context, domainID int64, req Create
|
|||||||
|
|
||||||
func (c *Client) UpdateDNSRecord(ctx context.Context, domainID int64, recordID int64, req UpdateDNSRecordRequest) (*DNSRecord, error) {
|
func (c *Client) UpdateDNSRecord(ctx context.Context, domainID int64, recordID int64, req UpdateDNSRecordRequest) (*DNSRecord, error) {
|
||||||
var resp getDNSRecordResponse
|
var resp getDNSRecordResponse
|
||||||
if err := c.doRequest(ctx, http.MethodPut, fmt.Sprintf("/dns/%d/record/%d", domainID, recordID), buildDNSRecordUpsertPayload(req.RecordType, req.NodeName, req.Content, req.TTL, req.State, req.Group, req.Host), &resp); err != nil {
|
if err := c.doRequest(ctx, http.MethodPost, fmt.Sprintf("/dns/%d/record/%d", domainID, recordID), buildDNSRecordUpsertPayload(req.RecordType, req.NodeName, req.Content, req.TTL, req.State, req.Group, req.Host), &resp); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
normalizeDNSRecord(&resp.DNSRecord)
|
normalizeDNSRecord(&resp.DNSRecord)
|
||||||
|
|||||||
@@ -200,7 +200,7 @@ func TestClientCreateDNSRecordSendsIPv4AddressForARecord(t *testing.T) {
|
|||||||
func TestClientUpdateDNSRecordSendsIPv6AddressForAAAARecord(t *testing.T) {
|
func TestClientUpdateDNSRecordSendsIPv6AddressForAAAARecord(t *testing.T) {
|
||||||
var captured map[string]any
|
var captured map[string]any
|
||||||
server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||||
if r.Method != http.MethodPut || r.URL.Path != "/dns/1001/record/2002" {
|
if r.Method != http.MethodPost || r.URL.Path != "/dns/1001/record/2002" {
|
||||||
t.Fatalf("unexpected request %s %s", r.Method, r.URL.Path)
|
t.Fatalf("unexpected request %s %s", r.Method, r.URL.Path)
|
||||||
}
|
}
|
||||||
if err := json.NewDecoder(r.Body).Decode(&captured); err != nil {
|
if err := json.NewDecoder(r.Body).Decode(&captured); err != nil {
|
||||||
|
|||||||
@@ -241,7 +241,7 @@ func (s *Server) serveRecordRoutes(w http.ResponseWriter, r *http.Request, segme
|
|||||||
case http.MethodGet:
|
case http.MethodGet:
|
||||||
s.handleGetRecord(w, domainID, recordID)
|
s.handleGetRecord(w, domainID, recordID)
|
||||||
return
|
return
|
||||||
case http.MethodPut:
|
case http.MethodPut, http.MethodPost:
|
||||||
s.handleUpdateRecord(w, r, domainID, recordID)
|
s.handleUpdateRecord(w, r, domainID, recordID)
|
||||||
return
|
return
|
||||||
case http.MethodDelete:
|
case http.MethodDelete:
|
||||||
|
|||||||
Reference in New Issue
Block a user