框架 | 秘钥 |
---|---|
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