A like Postman API debugger that supports custom encryption.
一個類似Postman的支持自定義加密傳輸的後台API接口調試工具.

點擊下載最新release包.在安裝了JDK1.8或者JRE1.8的電腦上,雙擊jar包直接運行.
創建項目:菜單欄Project > new >輸入項目名稱> OK

看到當前打開的項目就OK了.
輸入BaseUrl,點擊保存生效.
輸入接口Url,最後的請求Url = baseUrl+接口Url.
選擇請求方法,現在只做了POST和GET方法.
選擇加密方式.default是沒有加密,直接發送.
Add Row 添加一個請求參數.
填寫請求參數的key和value,這裡需要注意的是需要表格失去焦點變為藍色之後,這個值才會被保存生效.

點擊小飛機發送請求.請求的相關信息在右上部分的Request Information中顯示.請求結果在下面的Json Editor中顯示.
請求成功返回後這個接口的url,方法,加密方式和請求參數會自動保存到數據庫中.添加其他請求只需直接輸入接口url和參數,方法等配置進行測試,前一個接口的信息不會被覆蓋.
該App界面使用Java實現,邏輯使用Kotlin實現.內部數據庫為ObjectBox,網絡請求使用Okhttp3.需要達到自定義加密的目的的話.需要自行擴展.
**[重點]**fork倉庫clone到本地後,使用IDEA打開.下載jxbrowser-對應平台-6.20.jar (鏈接:https://pan.baidu.com/s/1B3ErPhbrocIaGhu3zg8RMA 密碼:1wn9 ) 拷貝到lib中(太大了不好傳).
在build生成out文件夾後,解壓jsonView.zip到outproductionclassescomlongforusapidebuggerui目錄下(這樣生成jar包的時候才會把這些文件包含到jar包中,gradle應該有別的更優雅的方法,目前尚未實現).
實現com.longforus.apidebugger.encrypt.IEncryptHandler抽像類.可參考默認實現類com.longforus.apidebugger.encrypt.DefaultEncryptHandler
/* *
* Created by XQ Yang on 8/30/2018 5:11 PM.
* Description : 加密处理
*/
abstract class IEncryptHandler {
//这个加密类型的code,同一工程不允许出现相同的
abstract val typeCode : Int
//显示在界面上的名字
abstract val title : String
//实现get方法的参数加密
abstract fun onGetMethodEncrypt ( params : Map < String , String > ? , builder : Request . Builder , url : String )
//实现post方法的参数加密
abstract fun onPostMethodEncrypt ( params : Map < String , String > ? , builder : Request . Builder , url : String ): RequestBody
override fun toString (): String {
return title
}
}新建一個實現類的實例添加到com.longforus.apidebugger.MyValueHandler#getEncryptImplList中.第0個為默認顯示item.現在就可以在加密方式中選擇你自己的加密方式了.
object MyValueHandler {
val encryptImplList = listOf< IEncryptHandler >( YourEncryptHandler (), DefaultEncryptHandler ())
}打包可運行的jar包:




添加splash閃屏圖片: 拷貝splash.png到outproductionclasses目錄下,在上一步生成的清單文件中添加最後一行.
Manifest-Version: 1.0
Main-Class: com.longforus.apidebugger.MainKt
SplashScreen-Image: splash.png