ソースを参照

[Fix-13820][alert] Fix bodyParams is empty get error log (#13821)

initialize an empty objectNode to save contentField.
kingbabingge 2 年 前
コミット
81aa105ff6

+ 4 - 1
dolphinscheduler-alert/dolphinscheduler-alert-plugins/dolphinscheduler-alert-http/src/main/java/org/apache/dolphinscheduler/plugin/alert/http/HttpSender.java

@@ -163,7 +163,10 @@ public final class HttpSender {
      */
     private void setMsgInRequestBody(String msg) {
         try {
-            ObjectNode objectNode = JSONUtils.parseObject(bodyParams);
+            ObjectNode objectNode = JSONUtils.createObjectNode();
+            if (StringUtils.isNotBlank(bodyParams)) {
+                objectNode = JSONUtils.parseObject(bodyParams);
+            }
             // set msg content field
             objectNode.put(contentField, msg);
             StringEntity entity = new StringEntity(JSONUtils.toJsonString(objectNode), DEFAULT_CHARSET);