java怎么给webservice加密?
1.1.1 验证码加密接口中的验证码参数,均需要通过DES + BASE64加密,1.1.2 报文通票平台接入端分配一个cp_code和csecret,双方均***用如下规则对报文进行签名:l 第一步:签名源串构造规则:将请求参数按照如下规则组织“a=x&b=y&c=z&……”,每一个参数按参数名的自然数序排列。(按字典序排列)l 第二步:使用Hmac-SHA1加密算法,将Step1中的到的源串以及实现分配的密钥(csecret )进行加密;l 第三步:将Step2中得到的加密字串进行Base64编码。签名密钥(secret):abcdefghijklmnopqrstuvwx/*** 返回签名之后的json对象** @param json原JSON对象* @param secret密钥* @return* @throws Exception*/publicstatic String doSign(JSONObjectjson,String secret) throws Exception {String baseStr = "";for (Object key : newTreeSet(json.keySet())) {baseStr += ("&" + key + "=" + json.get(key));}SecretKeySpec key = newSecretKeySpec(secret.getBytes("UTF-8"), "HMacSHA1");Mac mac = Mac.getInstance("HmacSHA1");mac.init(key);byte[] bytes = mac.doFinal(baseStr.substring(1).getBytes("UTF-8"));json.put("signature", new String(Base64.encodeBase64(bytes)));return json.toString();}
如何通过https方式访问webservice?
微服务是把原来的单体服务切割成小的服务。一般来说通过http/***s提供服务。微服务不仅仅是把***请求分到不同的服务器上,而是逻辑上进行切割,包括数据库。
比如订单服务,产品服务,如果仅仅是请求分到不同服务器,只能算负载均衡。
如果订单有独立的数据库,独立的服务,产品也有独立的服务,甚至实现架构都不一样 比如订单用Java,产品用go。甚至各个微服务的耦合交给前端实现。
比如查看订单的时候,显然需要知道订单对应的产品,买家或者卖家信息(用户微服务),前端获得订单数据之后,可以根据产品id,用户id,向产品服务,用户服务发起请求获取数据。至于跟***,Webservice的关系,后者应该说只是微服务接口实现方式而已。