From 332fc3961b96e3c2d56671f929d35d84f916a0ae Mon Sep 17 00:00:00 2001 From: Atsushi Kawamura Date: Tue, 8 Aug 2023 03:30:55 +0900 Subject: [PATCH] add payload (#62) --- pkg/services/olhttp/olrequest.go | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/pkg/services/olhttp/olrequest.go b/pkg/services/olhttp/olrequest.go index b33c7bc..a8014ab 100644 --- a/pkg/services/olhttp/olrequest.go +++ b/pkg/services/olhttp/olrequest.go @@ -164,7 +164,19 @@ func (svc OLHTTPService) Update(r interface{}) ([]byte, error) { // Destroy executes a HTTP destroy and removes the resource from its location in a remote func (svc OLHTTPService) Destroy(r interface{}) ([]byte, error) { resourceRequest := r.(OLHTTPRequest) - req, reqErr := http.NewRequest(http.MethodDelete, resourceRequest.URL, nil) + var ( + req *http.Request + reqErr error + ) + if resourceRequest.Payload != nil { + bodyToSend, marshErr := json.Marshal(resourceRequest.Payload) + if marshErr != nil { + return nil, customerrors.OneloginErrorWrapper(resourceRequestuestContext, marshErr) + } + req, reqErr = http.NewRequest(http.MethodDelete, resourceRequest.URL, bytes.NewBuffer(bodyToSend)) + } else { + req, reqErr = http.NewRequest(http.MethodDelete, resourceRequest.URL, nil) + } if reqErr != nil { return nil, customerrors.OneloginErrorWrapper(resourceRequestuestContext, reqErr) }