前言
今天中午收到我司安全部發了一封郵件:Jackson存在安全漏洞。查了一下,這件事并不算很新鮮了(已經過了5天的樣子),本文來聊聊吧。
說起來還蠻戲劇化:阿里云向Jackson官方提交了一個Jackson序列化安全漏洞。眾所周知,在國內關于JSON庫使用有兩大主要陣營:國際著名的Jackson庫和國內阿里巴巴出品的Fastjson。
同樣的功能定位,不存在競爭想想也覺得不可能嘛。所以當我看到這個漏洞竟是阿里云上報的,就覺得這關系還蠻微妙呢,默默的腹黑了3秒鐘,哈哈。
附:FasterXML/jackson-databind是一個簡單基于Java應用庫,Jackson可以輕松的將Java對象轉換成json對象和xml文檔,同樣也可以將json、xml轉換成Java對象。Jackson是美國FasterXML公司的一款適用于Java的數據處理工具。jackson-databind是其中的一個具有數據綁定功能的組件。
1. 前言
大家都知道,Postman是一個非常受歡迎的API接口調試工具,提供有Chrome擴展插件版和獨立的APP,不過它的很多高級功能都需要付費才能使用。
如果你連Postman都還沒有用過,不妨可以先體驗一番。
Postman官網:
https://www.getpostman.com/
PS: 由于2018年初Chrome停止對Chrome應用程序的支持,你的P****ostman插件可能無法正常使用了,在這里建議大家直接下載它的應用程序進行使用。
雖然Postman作為一款接口調試工具,算是非常優秀的了,但一說到使用高級功能要付費就有人坐不住了,決定自己造個輪子免費給大家使用,造福不愿付費的人群。
于是,**Postwoman就誕生了!??**它的作者是一位叫 Liyas Thomas 的家伙。看名字就知道是沖著Postman來的,你敢收費,我就敢免費開源。(參與貢獻者還是很多的)
2.?Postwoman介紹
簡單來說,Postwoman是一個Postman的免費、快速且美觀的替代方案,它的設計初衷是為了幫助開發人員更快地創建請求,節省寶貴的開發時間,提升工作效率。并且Postwoman是開源產品,界面美觀,更容易使用!
PS: 下述兩張圖,是在Postwoman官網截取的兩張圖。
使用操作和Postman基本一致,如果你從Postman遷移過來,基本上沒有什么學習成本。
GitHub項目官網:
https://github.com/liyasthomas/postwoman
3.?相關特性
Postwoman是基于NodeJs編寫的,主要特點除了可以支持主流的Restful接口調試之外,還支持 GraphQL和 WebSocket。
作為一款開源的 Postman 替代品,主打特性有如下一些:
-
輕盈,可直接在線訪問;
-
簡約,采用簡約的 UI 設計精心打造;
-
支持 GET, HEAD, POST, PUT, DELETE, OPTIONS, PATCH 方法;
-
支持驗證;
-
實時,發送請求即可獲取響應。
除了這些,還可自定義背景,前景色和強調色組合。
1、自定義選項:
-
選擇主題:Kinda Dark(默認),Clearly White,Just Black和System主題
-
選擇強調顏色:綠色(默認),黃色,粉紅色,紅色,紫色,橙色,青色和藍色
2、PWA:
可以通過PWA的方式安裝。
PS: PWA全稱Progressive Web App,即漸進式WEB應用。
特性:
-
與Service Workers同時加載
-
離線支持
-
低RAM /內存和CPU使用率
-
添加到主屏幕(頁腳中的按鈕)
-
桌面PWA支持(頁腳中的按鈕)
3、WebSocket:
通過單個TCP連接建立全雙工通信通道。發送和接收數據
4、GraphQL:
GraphQL是API的查詢語言。
除以上以外還具備其他特性就不一一介紹了,讀者使用后一試便知。
4. 定制開發
相比于其作為Postman的替代方案,筆者其實更在乎它的實現方式,Postwoman是一個基于Vue構建的Web項目,且可以構建成PWA應用,下述提供三種本地開發運行方式。
方式一:npm本地構建運行:
git clone https://github.com/liyasthomas/postwoman.git
PS: 官網是直接建議npm install
,但筆者在嘗試時,發現npm install
或cnpm install
安裝時,會出現依賴的cypress
安裝失敗的問題,如果讀者也出現此問題,可以先單獨安裝cypress
.
方式二:docker-compose (需要本地先安裝docerk-compose):
git clone https://github.com/liyasthomas/postwoman.git
方式三:docker (需要本地先安裝docker環境):
#pull
三種方式,任意一種,本地運行成功后,打開瀏覽器,訪問http://localhost:3000
? 即可。以方式一為例,通過npm run dev
本地運行,如下圖所示。
本地服務啟動后,可根據自己的定制開發需求,進行修改,如果你熟悉Vue的話,接下來就可以隨意玩耍了,例如此處,筆者將Postwoman標題修改了一下。
5. 總結
單從本文介紹可能并不能體驗到這樣一個顏值頗高的API客戶端,如果你覺得Postman不夠好用或者確實是想要一個好看的界面,那么Postwoman將是你最佳的選擇!
最后
針對最近很多人都在面試,我這邊也整理了相當多的面試專題資料,也有其他大廠的面經。希望可以幫助到大家。
上述的面試題答案都整理成文檔筆記。 也還整理了一些面試資料&最新2021收集的一些大廠的面試真題(都整理成文檔,小部分截圖)
資料領取方式:點擊這里免費獲取
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持。
資料領取方式:點擊這里免費獲取
[外鏈圖片轉存中…(img-jZbbM30V-1624684679058)]
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持。