11 2019 档案
摘要:<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv
阅读全文
摘要:Get: 1、Get参数传递的本质是url字符串拼接;2、url字符串长度受限制;3、Get参数传递在Http请求头部传递,而不支持Request-Body传递;4、Get类型的方法支持参数为基本类型,不支持实体类型;5、Get类型的方法命名,应尽量采用“Get+方法名”的命名方式,且习惯性地在方法
阅读全文
摘要:如何保证WebAPI的安全?1、JWT加密解密。token2、使用https传输协议。3、把用户所有请求的参数信息加上一个只有服务器端知道的secret,做个散列运算,然后到了服务器端,服务器端也做一个散列运算。如果散列值是一样的,那就表示没被篡改。4、在业务逻辑上进行保护。(检查访问者是否有权限来
阅读全文
摘要:责任链模式:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这个对象连成一条链条,并沿着这条链条传递该请求,直到有一个对象处理它为止。 //定义一个处理请示的接口 abstract class Handler { protected Handler successor; p
阅读全文
摘要:策略模式(Strategy):定义了算法家族,分别封装起来,让他们之间可以相互替换,此模式让算法的变化,不会影响到使用算法的用户。 //策略类,定义所有支持的算法的公共接口 public abstract class Strategy { //算法方法。 public abstract void A
阅读全文
摘要:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可以将该对象恢复到原先保存的状态了。 将要保存的细节封装在Memento中,哪天要更改保存的细节也不影响客户端。Memento模式比较适用于功能比较复杂的,但需要维护或记录属性历史的类,或者需要保存的属性只是众多属
阅读全文