框架 | 祕鑰 |
---|---|
fabric | SM2,secp256r1 |
-fabric框架應用使用secp256r一、SM2 祕鑰的祕鑰託管和祕鑰上傳兩種模式javascript
應用參數java
應用參數是用戶在建立應用成功以後在應用詳情頁面獲取,或者由本地設置的一些參數,具體包含如下參數git
//網關接口地址ip private static String BASE_URL = "http://ip:port";
headers.put("username", "admin")
headers.put("password", "password");
headers.put("app_id", "scm_qa");
headers.put("accountbook_id", "zj_scm_qa");
headers.put("contract_id", "survey");
//網關接口地址 private static String BASE_URL = "http://localhost:8023"; //URI爲固定值,不用修改 private static String TRANSACTION_URI = "/transaction"; private static String QUERY_URI = "/query"; public static void main(String[] args) { //建立交易 insert(); //修改 updte(); //取消 cancel(); //刪除 delete(); //查詢指定交易 query(); //查詢指定交易變動歷史 getHistory(); //查詢交易列表 list(); } /** * 獲取請求header * * @return */ private static Map<String, String> getHeader() { //設置請求header Map<String, String> headers = new HashMap<>(); //應用編號 headers.put("app_id", "scm_qa"); //帳本編號 headers.put("accountbook_id", "zj_scm_qa"); //合約編號 headers.put("contract_id", "survey"); //用戶名稱 headers.put("username", "admin"); //用戶密碼 headers.put("password", "password"); return headers; } /** * 建立 */ private static void insert() { // 設置請求param InsertSurveyRequest surveyRequest = new InsertSurveyRequest(); surveyRequest.setKey("123456"); surveyRequest.setTxType(SurveyTxTypeEnum.INSERT_SURVEY.getTxType()); Map<String, String> value = new HashMap<>(); value.put("info", "info"); surveyRequest.setValue(value); String params = JsonUtils.toJson(surveyRequest); String resp = HttpUtils.sendURLPost(BASE_URL + TRANSACTION_URI, params, getHeader()); doSomething(resp); } /** * 更新 */ private static void updte() { // 設置請求param UpdateSurveyRequest surveyRequest = new UpdateSurveyRequest(); surveyRequest.setKey("123456"); surveyRequest.setTxType(SurveyTxTypeEnum.UPDATE_SURVEY.getTxType()); Map<String, String> value = new HashMap<>(); value.put("info", "info"); surveyRequest.setValue(value); String params = JsonUtils.toJson(surveyRequest); String resp = HttpUtils.sendURLPost(BASE_URL + TRANSACTION_URI, params, getHeader()); doSomething(resp); } /** * 刪除 */ private static void delete() { // 設置請求param DeleteSurveyRequest surveyRequest = new DeleteSurveyRequest(); surveyRequest.setKey("123456"); surveyRequest.setTxType(SurveyTxTypeEnum.DELETE_SURVEY.getTxType()); String params = JsonUtils.toJson(surveyRequest); String resp = HttpUtils.sendURLPost(BASE_URL + TRANSACTION_URI, params, getHeader()); doSomething(resp); } /** * 取消 */ private static void cancel() { // 設置請求param CancelSurveyRequest surveyRequest = new CancelSurveyRequest(); surveyRequest.setKey("123456"); surveyRequest.setTxType(SurveyTxTypeEnum.CANCEL_SURVEY.getTxType()); String params = JsonUtils.toJson(surveyRequest); String resp = HttpUtils.sendURLPost(BASE_URL + TRANSACTION_URI, params, getHeader()); doSomething(resp); } /** * 查詢指定信息 */ private static void query() { // 設置請求param BaseSurveyRequest cancelBatchRequest = new BaseSurveyRequest(); cancelBatchRequest.setKey("123456"); cancelBatchRequest.setTxType(SurveyTxTypeEnum.QUERY_SURVEY.getTxType()); String params = JsonUtils.toJson(cancelBatchRequest); String resp = HttpUtils.sendURLPost(BASE_URL + QUERY_URI, params, getHeader()); doSomething(resp); } /** * 查詢變動歷史記錄 */ private static void getHistory() { // 設置請求param GetSurveyHistoryRequest surveyRequest = new GetSurveyHistoryRequest(); surveyRequest.setKey("123456"); surveyRequest.setChangeType("insert");//查詢全部時不傳該參數 surveyRequest.setTxType(SurveyTxTypeEnum.GET_HISTORY.getTxType()); String params = JsonUtils.toJson(surveyRequest); String resp = HttpUtils.sendURLPost(BASE_URL + QUERY_URI, params, getHeader()); doSomething(resp); } /** * 查詢列表 */ private static void list() { // 設置請求param ListSurveyRequest surveyRequest = new ListSurveyRequest(); surveyRequest.setStartTime("20200720010101"); surveyRequest.setEndTime("20200820010101"); surveyRequest.setTxType(SurveyTxTypeEnum.LIST_SURVEY.getTxType()); String params = JsonUtils.toJson(surveyRequest); String resp = HttpUtils.sendURLPost(BASE_URL + QUERY_URI, params, getHeader()); doSomething(resp); } /** * 處理業務邏輯 * * @param resp */ private static void doSomething(String resp) { if (resp != null) { //此處爲查詢接口示例,其它接口resp解析參考此處 DataResponse<QuerySurveyResponse> response = JsonUtils.json2Object(resp, new TypeReference<DataResponse<QuerySurveyResponse>>() { }); if (response.getResult() == 1 && CommonResponse.SUCCEED.equals(response.getCode())) { //success } else { //fail } } }
SDK源碼連接:https://gitee.com/luowenxing/fabric-sdk.gitjson