From 9a03a60f627a1a13a7c549a93a2faf5b2f1ed95d Mon Sep 17 00:00:00 2001 From: Max Lin Date: Thu, 18 Feb 2016 18:25:51 +0800 Subject: [PATCH] Fix PUT data never send --- osclib/stagingapi.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/osclib/stagingapi.py b/osclib/stagingapi.py index fcec4b62..53ca7f2b 100644 --- a/osclib/stagingapi.py +++ b/osclib/stagingapi.py @@ -81,10 +81,12 @@ class StagingAPI(object): query = [] if not query else query return makeurl(self.apiurl, l, query) - def _retried_request(self, url, func): + def _retried_request(self, url, func, data=None): retry_sleep_seconds = 1 while True: try: + if data is not None: + return func(url, data=data) return func(url) except urllib2.HTTPError, e: if 500 <= e.code <= 599: @@ -104,7 +106,7 @@ class StagingAPI(object): return self._retried_request(url, http_POST) def retried_PUT(self, url, data): - return self._retried_request(url, http_PUT) + return self._retried_request(url, http_PUT, data) def _generate_ring_packages(self): """