介面返回大量無用或者敏感字段怎麼辦?

2021-10-10 19:26:42 字數 2089 閱讀 1260

地點:***x公司會議室

前端a: 你們後端介面返回的json太複雜啦!我這例只需要使用者的真實姓名和年齡就可以了,結果你們返回了我一大串,好幾十個字段……

前端b: 是呀!是呀!身份證資訊是敏感的,這裡也不需要用,你們竟然也返回了,還有密碼都給我們了!幸虧是加密的~

後端小菜:多餘的字段你們不要管就好啦,又不影響你們~,實在不行我拷貝個新物件給你!

老闆在一旁沒有說話,皺了下眉頭~

?介面傳輸大量無用資料占用頻寬資源、影響效能、甚至洩漏敏感資訊!拷貝新物件的話,需求多樣會很繁瑣而且難以維護,有可能寫了兩個擁有一樣屬性的物件~

針對介面響應的json做處理,篩選出需要的字段,通過註解的方式實現簡單明瞭的維護,支援「複雜巢狀」、「僅篩選」、」僅排除「。 演示

serializefield
/**

* @author l'amour solitaire

* @description todo

* @date 2020/8/11 下午8:55

**/@target(elementtype.method)

@retention(retentionpolicy.runtime)

public @inte***ce serializefield ;

/*** 需要去除的字段

* @return

*/string excludes() default {};

}

multiserializefield
/**

* @author l'amour solitaire

* @description 用於巢狀類情況的二層過濾(本質目的,為了可以二次執行)

* @date 2020/8/11 下午8:52

**/@target(elementtype.method)

@retention(retentionpolicy.runtime)

public @inte***ce multiserializefield ;

/*** 需要去除的字段

* @return

*/string excludes() default {};

}

moreserializefield
/**

* @author l'amour solitaire

* @description todo

* @date 2020/8/11 下午8:55

**/@target(elementtype.method)

@retention(retentionpolicy.runtime)

public @inte***ce moreserializefield ;

}

webmvcconfig
/**

* @author l'amour solitaire

* @description todo

* @date 2020/7/16 上午9:53

**/@configuration

public class webmvcconfig extends webmvcconfigurationsupport

}

@moreserializefield(),

@serializefield(clazz = peopleext.class, excludes = )

})public r getuser()

過濾前響應報文

過濾後響應報文

如何刪除大量小 大 檔案,或者大量資料夾

原文 親測可用。有空看下和rm 的 區別 方法 要在linux下刪除海量檔案的情況,需要刪除數十萬個檔案。這個是之前的程式寫的日誌,增長很快,而且沒什麼用。這個時候,我們常用的刪除命令rm fr 就不好用了,因為要等待的時間太長。所以必須要採取一些非常手段。我們可以使用rsync來實現快速刪除大量檔...

MySQL追加注釋或者大量修改注釋

之前乙個專案比較倉促,開發給的建表語句沒有注釋.現在要補全注釋資訊.但是mysql後期追加注釋比較麻煩 需要使用modify語法。只要不小心寫錯一點,就可能導致表結構的變更,而不是注釋的變更.實驗表如下 create table t c1 int primary key auto increment...

MySQL追加注釋或者大量修改注釋

mysql追加注釋或者大量修改注釋 2016 01 25 20 28 05 分類 mysql mysql 5.6.14 之前乙個專案比較倉促,開發給的建表語句沒有注釋.現在要補全注釋資訊.但是mysql後期追加注釋比較麻煩 需要使用modify語法。只要不小心寫錯一點,就可能導致表結構的變更,而不是...