我有一個 JsonNode,我接受它作為端點的參數??雌饋硐襁@樣:@ApiModelProperty(value = "data", example = "{}", required = true)@NotNull(message = "data cannot be null")protected JsonNode data;我想創建一個名為 的驗證器@ValidJson。JsonNode 本身將確保提供給它的信息是有效的 json,所以如果我傳遞如下內容:{"data" = "hello",},如果 后面多了一個逗號"hello",就會拋出錯誤。但是我如何確保我沒有得到類似"Hello"JsonNode 的東西,它是有效的 json,因為普通的 String 是有效的 json 表示形式?我首先想檢查字符串是否只是字母數字,如果是,那么我會認為它無效,但顯然有人可以傳遞一個帶有符號的字符串,那就沒問題了。我能想到的最好的解決方案是檢查第一個和最后一個字符分別是{和},JsonNode 會處理其余的事情。但我對 的了解還不夠JsonNode,所以也許這里有人有更好的主意?編輯:為了更具體地表達我想要的,這里有幾個例子:JsonNode 會處理不正確的 Json。我想對我獲取的數據進行一些更嚴格的驗證。我不想接收任何類型的 Json,我想要“真正的”、可序列化的 json,這就是我們所說的 json 時所指的。如果用戶傳遞一個如下所示的字符串:"Hello" "Hello world" "I'm just a random String that isn't in a key:value structure"等等,我想拋出一個錯誤并詢問他們以 key:value 結構格式化的 Json,例如:{ "key": "value"}我正在考慮檢查第一個和最后一個字符串值是否分別為{和},正如我在評論中提到的那樣,但我認為這太“hacky”,也許有更好的方法。
添加回答
舉報
0/150
提交
取消