Fix bug for status code 303 location HEAD field is NULL 43/88443/1
authorhongyuzhao <zhao.hongyu@zte.com.cn>
Fri, 24 May 2019 05:45:42 +0000 (13:45 +0800)
committerhongyuzhao <zhao.hongyu@zte.com.cn>
Fri, 24 May 2019 06:13:42 +0000 (14:13 +0800)
Signed-off-by: hongyuzhao <zhao.hongyu@zte.com.cn>
Change-Id: If8b109194a61294e5d22cf285beb7edf36f158d9
Issue-ID: VFC-1358

lcm/lcm/nf/biz/create_subscription.py
lcm/lcm/nf/views/common.py

index 6802c22..8c6d452 100644 (file)
@@ -27,6 +27,7 @@ from lcm.pub.database.models import SubscriptionModel
 from lcm.pub.exceptions import NFLCMException
 from lcm.pub.exceptions import NFLCMExceptionSeeOther
 from lcm.pub.utils.values import ignore_case_get
+from lcm.pub.config.config import MSB_SERVICE_IP, MSB_SERVICE_PORT
 
 logger = logging.getLogger(__name__)
 
@@ -117,8 +118,8 @@ class CreateSubscription:
             return True
         for subscription in subscriptions:
             if self.check_filter_exists(subscription):
-                raise NFLCMExceptionSeeOther("Already Subscription exists with the "
-                                             "same callbackUri and filter")
+                links = json.loads(subscription.links)
+                raise NFLCMExceptionSeeOther("http://%s:%s/%s" % (MSB_SERVICE_IP, MSB_SERVICE_PORT, links["self"]["href"]))
         return False
 
     def save_db(self):
index 4f86426..a57a93e 100644 (file)
@@ -53,7 +53,7 @@ def view_safe_call_with_log(logger):
             except NFLCMExceptionSeeOther as e:
                 logger.error(e.message)
                 resp = Response(status=status.HTTP_303_SEE_OTHER)
-                resp["Location"] = ""
+                resp["Location"] = e.message
                 # resp["Location"] = "subscriptions/%s" % e.id
                 return resp
             except NFLCMExceptionNotFound as e: