RESTful什么是RESTFUL是一种网络应用的设计风格和开发方式,RESTFIL是基于http的。主要适用于接口业务开发。APP_IDAPP_SECRET对常用API的主要作用是什么?流程说明app_id,app_key,app_secret:我的身份证,银行卡号,银行卡密码JSON和JSONP的区别。JSON用于传输数据,JSONP用于跨域。EncryptionSignatureSigncryption加密的区别在于用一种特殊的算法改变了原有的信息数据,使得未经授权的用户即使获得了加密后的信息,由于不知道解密的方法,仍然无法理解信息的内容。签名(也称公钥数字签名、电子签名)是一种类似于普通的写在纸上的物理签名的方法,但它是利用公钥加密领域的技术实现的,以识别数字信息。一组数字签名通常定义两个互补的操作,一个用于签名,另一个用于验证。数字签名是只有消息的发送者才能产生,他人无法伪造的数字串。这个数字串也是消息发送者所发送消息真实性的有效证明。签密在信息安全中,为了同时保证信息的机密性、完整性、真实性和不可抵赖性等安全要素,传统的做法是对消息进行“先签名后加密”。该方法的计算量和通信成本是加密成本和签名成本之和,因此效率低下。为此,近年来人们开始研究数字签密系统。也就是说,在一个逻辑步骤中,同时对信息进行签名和加密。其核心价值在于降低加密和签名的总计算和通信成本。RSARSA是目前最具影响力的公钥加密算法。.RSA算法是基于一个非常简单的数论事实:两个大质数相乘非常容易,但当时乘积因式分解是极其困难的,所以可以公开乘积作为加密密钥RESTfulAPI版本控制策略API的版本控制策略通常有3种模式:第一种:TheKnot:Noversion,即平台的API永远只有一个版本,所有用户必须使用最新的API,任何API的修改将影响所有的平台。用户。甚至平台的整个生态系统。第二种:Point-to-Point:点对点,即平台的API版本有自己的版本号。用户根据自己的需要选择使用相应的API。如果他们需要使用新的API功能,用户必须自行升级。第三种:CompatibleVersioning:兼容版本控制,像TheKnot,平台只有一个版本,但最新版本需要兼容之前版本的API行为。OAuth2.0简单解释OAuth2.0是目前最流行的授权机制,用于授权第三方应用获取用户数据。简单的说,OAuth就是一种授权机制。数据的拥有者告诉系统,他同意授权第三方应用程序进入系统并获取数据。系统因此生成一个短期访问令牌(token),用于代替密码供第三方应用程序使用。PHP单例模式然而,在PHP中,所有的变量,无论是全局变量还是类的静态成员,都是页面级别的。每次执行一个页面时,都会重新创建一个新的对象,并在页面执行完毕后清除,好像PHP单例模式是没有意义的,所以我觉得当有多个应用场景针对单个页面级请求,需要共享同一个对象资源时,PHP单例模式是非常有意义的。单例模式的三个要点:(1)。需要一个保存类唯一实例的静态成员变量:privatestatic$_instance;(2).constructor和clone函数必须声明为private,防止外部程序从newclasses失去单例模式的意义:privatefunction__construct(){$this->_db=pg_connect('xxxx');}privatefunction__clone(){}//覆盖__clone()方法并禁止克隆(3)。必须提供公共静态方法(通常是getInstance方法)来访问此实例,从而返回对唯一实例的引用publicstaticfunctiongetInstance(){if(!(self::$_instanceinstanceofself)){self::$_instance=newself();}返回自我::$_实例;}实现单例模式classSingleton{//创建静态私有变量来保存该类的对象staticprivate$instance;//防止使用new直接创建对象privatefunction__construct(){}//防止使用clone克隆对象privatefunction__clone(){}staticpublicfunctiongetInstance(){//判断$instance是否为Singleton对象,如果不,创建if(!self::$instanceinstanceofself){self::$instance=newself();}返回自我::$实例;}publicfunctiontest(){echo"我是单身狗";}}$唱=Singleton::getInstance();$sing->test();$sing2=newSingleton();//致命错误:未捕获错误:从无效上下文调用私有Singleton::__construct()in$sing3=clone$sing;//致命错误:未捕获错误:从上下文调用私有Singleton::__clone()
