1.問題描述
JSON.isValid(); JSON.isValidobject(); JSON.isValidArray();
- 經過debug源碼發現isValid0方法只要字符串開頭是“{”結尾是“}”就都返回true,中間skipObject和skipArray直接跳過了,並沒有校驗每一個字符的合法性。
2.解決辦法
package com.atguigu.flume.interceptor;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONException;
/**
* @author Nien
* @create 2020-05-13
*/
public class JSONUtils {
public static boolean isJSONValidate(String log){
try {
JSON.parse(log);
return true;
} catch (JSONException e) {
return false;
}
}
}