为您找到搜索结果:1025个
springboot解决接口跨域问题
CorsConfig跨域配置类packagecom.zkw.fedweb.utils;importorg.springframework.context.annotation.Bean;importorg.springframework.context.annotation.Configuration;importorg.springframework.web.cors.CorsConfiguration;importorg.springframework.web.cors.UrlBasedCorsConfigurationSource;importorg.springframework.web.filter.CorsFilter;importjava.util.Arrays;@ConfigurationpublicclassCorsConfig{@BeanpublicCorsFiltercorsFilter(){finalUrlBasedCorsConfigurationSourcesource=newUrlBasedCorsConfigurationSource();finalCo...
面部识别接口文档
【face++文档】https://console.faceplusplus.com.cn/documents/5673465【百度文档】http://ai.baidu.com/docs#/Face-Detect-V3/top...
接口开发总结
根据需求,确定业务流程,及接口逻辑和数量接口文档确定完成后,进行接口评审(可以非正式形式,私下讨论,如果参与人员多可以以会议形式进行),在此确定接口与原型是否一致,保证前后端开发方向一致,如果讨论不下,反馈给上级进行定夺接口文档保证,接口请求参数和返回参数类型,接口名称,字段名称,字段类型,是否必传的准确定和正确性,相同功能请求接口和返回接口参数字段尽量相同如果调用或者公用其它接口,需要对接口进行分析和调用,确定接口请求与返回参数正确且可用需求充分挖掘,确定接口数量接口文档规范参考 https://github.com/Microsoft/api-guidelines/ https://developer.github.com/v3/ https://blog.csdn.net/xiaoxuan2015/article/details/53556497/如果在老接口上开发拓展接口,如果新开接口,则要确定下参数是否增加,是否需要改自测用例,测试数据是否也要改新增或者更新操作,如果要加redis锁要放在所有逻辑校验最前面dt...
java面向对象3-继承(继承、抽象类、抽象接口)
面向对象概念-类与对象的关系封装:指隐藏对象的属性和实现细节,仅对外提供公共访问方式,private-构造方法/构造器-this关键字-static关键字(javadoc制作工具类)-代码块继承:方法重写-super-子类实例化过程-final-抽象类-接口多态:4.1继承的概述:extends(继承,扩展) 多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要从抽取出来的那个类扩展(extends)即可需要扩展的类称为子类,抽取出来的那个类称为父类,或者超类,或者基类通过关键字:extends,让类与类之间产生继承关系class子类名extends父类名{/*类体*/}继承的出现提高了代码的复用性继承的出现让类与类之间产生了关系,提供了多态的前提(暂时记住) 4.2继承的特点Java只支持单继承,不支持多继承一个类只能有一个父类,不可以有多个父类classSubDemoextendsDemo{}//OKclassSubDemoextendsDemo1,Demo2{}//NGJava支持多层继承...
vue-cli3中使用express配置本地数据接口
1.在项目的根目录中增加mock.js文件,该文件作用的是关于express配置本地服务,代码如下1constexpress=require('express')2constapp=express()3constapiData=require('./data.json')4constseller=apiData.seller5constgoods=apiData.goods6constratings=apiData.ratings7constapiRouters=express.Router()8//使用express路由获得本地数据9apiRouters.get('/sellers',(req,res)=>{10res.json({11stu:0,12data:seller13})14})15apiRouters.get('/goods',(req,res)=>{16res.json({17stu:0,18data:goods19})20})21apiRouters.get('/ratings',(req,res)=>{22res.json({23stu:0,24d...
[05] 接口
接口是一系列抽象的集合,简单地说,它更像特殊的抽象类,类似所有方法都是抽象方法的抽象类。当然,这只是简单地说法,还是稍有不同的:抽象类可以有构造方法,接口没有构造方法抽象类可以有成员变量,接口只能有常量接口的声明不像抽象类使用abstractclass,而是使用新的关键字interface:【修饰符】interface接口名【extends父接口名列表】{【public】【static】【final】常量;【public】【abstract】方法;}4 1【修饰符】interface接口名【extends父接口名列表】{ 2 【public】【static】【final】常量;3 【public】【abstract】方法;4}修饰符只是为public,即不写,默认值也是public接口可以继承父接口,且可以实现接口多继承(因为方法都是抽象方法)方法只能有定义,没有实现常量和方法的三个修饰符都可以省略总结接口和抽象方法的区别就在于:抽象类 接口属性 无限制&...
UNIX网络编程读书笔记:原始套接口
概述应用程序可以绕过传输层而直接使用IPv4和IPv6,这称为原始套接口(rawsocket)。http://www.cnblogs.com/nufangrensheng/p/3583435.html。原始套接口是一种对原始网络报文进行处理的套接口。原始套接口主要应用在底层网络编程上,同时也是网络黑客的必备手段。例如sniffer、拒绝服务(DoS)、IP地址欺骗等都需要在原始套接字的基础上实现。与原始套接字对应,之前的TCP/UDP的套接字称为标准套接字,如下图所示,为标准套接字与原始套接字之间的关系。标准套接字与网络协议栈的TCP、UDP层打交道,而原始套接字则与IP层级网络协议栈核心打交道。原始网络套接口提供普通的TCP和UDP套接口不提供的以下3个功能:1、有了原始套接口,进程可以读与写ICMPv4、IGMPv4和ICMPv6等分组。2、有了原始套接口,进程可以读与写内核不处理其协议字段的IPv4数据报。3、有了原始套接口,进程还可以使用IP_HDRINCL套接口选项自行构造IPv4头部。原始套接口的创建创建一个原始套接口涉及如下步骤:1、把第2个参数指定为SOCK_RAW调用...
UNIX网络编程读书笔记:基本SCTP套接口编程
概述SCTP是一个较新的传输协议,于2000年在IETF得到标准化(TCP是在1981年标准化的)。它最初是为满足不断增长的IP电话市场设计的;具体地说,就是穿越因特网传输电话信令。SCTP是一个可靠的面向消息的协议,在端点之间提供多个流,并为多宿提供传输级支持。尽管SCTP和TCP之间存在一些本质性的差别,然而SCTP的一到一(one-to-one)接口与TCP提供的应用接口非常接近。这一点允许轻而易举地移植应用程序,不过没法使用SCTP的某些高级特性。SCTP的一到多(one-to-many)接口提供了这些特性的完全支持,然而可能需要费时费力地重新编写已有的应用程序。对于使用SCTP开发的大多数新的应用程序而言,推荐使用一到多接口。接口模型SCTP套接口分为两类:一到一套接口和一到多套接口。一到一套接口相应于单独一个SCTP关联。这种映射类似于TCP套接口和TCP连接的对应关系。对于一到多套接口,一个给定套接口上可以同时有多个活跃的SCTP关联。这种映射类似于绑定了某个特定端口的UDP套接口能够从若干个同时在发送数据的远地UDP端点接收彼此交错的数据报。一到一形式开发一到一形式的目...
UNIX网络编程读书笔记:基本UDP套接口编程
概述使用UDP编写的一些流行的应用程序有:DNS(域名系统)、NFS(网络文件系统)和SNMP(简单网络管理协议)。如下图所示,给出了典型的UDP客户/服务器程序的函数调用:客户不与服务器建立连接,而是只管使用sendto函数给服务器发送数据报,其中必须作为参数指定目的地(即服务器)的地址。类似地,服务器不接受来自客户的连接,而是只管调用recvfrom函数,等待来自某个客户的数据到达。recvfrom将与所接收的数据报一道返回客户的协议地址,因此服务器可以把响应发送给正确的客户。recvfrom和sendto函数#include<sys/socket.h>ssize_trecvfrom(intsockfd,void*buff,size_tnbytes,intflags,structsockaddr*from,socklen_t*addrlen);ssize_tsendto(intsockfd,constvoid*buff,size_tnbytes,intflags,conststructsockaddr*to,socklen_taddrlen);两者均返回:读写字节数——...
UNIX网络编程读书笔记:套接口选项
概述有很多方法来获取和设置影响套接口的选项:getsockopt和setsockopt函数fcntl函数ioctl函数getsockopt和setsockopt函数这两个函数仅用于套接口。#include<sys/socket.h>intgetsockopt(intsockfd,intlevel,intoptname,void*optval,socklen_t*optlen);intsetsockopt(intsockfd,intlevel,intoptname,constvoid*optval,socklen_t*optlen);返回值:0——成功,-1——出错其中,sockfd必须指向一个打开的套接口描述字;level(级别)指定系统中解释选项的代码:或为通用套接口代码,或为某个特定于协议的代码(例如IPv4、IPv6、TCP或SCTP)。optval是一个指向变量(*optval)的指针,setsockopt从*optval中取得选项待设置的新值,getsockopt则把已获取的选项当前值存放到*optval中。optlen指定*optval的大小,它对于setsoc...
UNIX网络编程读书笔记:基本TCP套接口编程
1、socket函数(客户端、服务器端都必须调用)参数family指明协议族(family),该参数也往往被称为协议域(domain)。所以有的书上声明如下:而且对于socket函数第一个参数,在不同书籍上可能会看到不同前缀的取值常量列表,如下两图所示:AF_xxx与PF_xxx:AF_前缀表地址族,PF_前缀表示协议族。历史上曾有这样的想法:单个协议族可以支持多个地址族,PF_值用来创建套接口,而AF_值用于套接口地址结构。但实际上,支持多个地址族的协议族从来就未实现过,而且头文件<sys/socket.h>中为一给定协议定义的PF_值总是与此协议的AF_值相等。2、connect函数(TCP客户端调用)客户在调用函数connect前不必非得调用bind函数,因为如果需要的话,内核会确定源IP地址,并选择一个临时端口作为源端口。如果是TCP套接口,调用connect函数将激发TCP的三路握手过程,而且仅在连接建立成功或出错时才返回,其中出错返回可能有以下几种情况:(1)若TCP客户没有收到SYN分节的响应,则返回ETIMEDOUT错误。(2)若对客户的SYN的...
UNIX网络编程读书笔记:套接口地址结构
前言大多数套接口函数都需要一个指向套接口地址结构的指针作为参数。每个协议族都定义它自己的套接口地址结构。这些结构的名字均以“sockaddr_”开头,并以对应每个协议族的唯一后缀结束。IPv4套接口地址结构IPv4套接口地址结构通常也称为”网际套接口地址结构“,它以”sockaddr_in“命名,定义在头文件<netinet/in.h>中。其POSIX定义如下:/*sockaddr_in*/structin_addr{in_addr_ts_addr;/*23bitsIPv4address*/};/*networkbyteordered*/structsockaddr_in{uint8_tsin_len;/*lengthofstructure(16)*/sa_family_tsin_family;/*AF_INET*/in_port_tsin_port;/*16-bitTCPorUDPportnumber*//*networkbyteordered*/structin_addrsin_addr;/*32-bitIPv4address*//*networkbyteordered...
UNIX网络编程读书笔记:端口号、套接口对和套接口
端口号端口号(portnumber):16位整数,用来区分不同的进程。服务器使用的端口号:TCP和UDP定义了一组众所周知的端口(well-knownport),用于标识众所周知的服务。客户端使用的端口号:通常使用短期存活的临时端口(ephemeralport)。这些端口号通常由传输层协议自动赋予客户。客户一般不关心其临时端口的具体值,而只需确信它在所在主机中是唯一的就行。传输层协议的代码确保这种唯一性。端口号被划分成三段:(1)众所周知的端口为0-1023.这些端口由IANA分配和控制。可能的话,相同的端口号就分配给TCP、UDP和SCTP的同一给定服务。例如,端口号80不论是TCP还是UDP都被赋予Web服务器,尽管目前它所有的实现都单纯使用TCP。(2)已登记的端口(registeredport)为1024-49151.这些端口不受IANA控制,不过由IANA登记并提供它们的使用情况清单,以方便整个群体。可能的话,相同端口号也分配给TCP和UDP的同一给定服务。(3)动态的(dynamic)或私用的(private)端口:49152-65535.IANA不管这些端口,它们就是我们...
如何手动获取Spring容器中的bean(ApplicationContextAware 接口)
publicclassSpringContextUtilsimplementsApplicationContextAware{privatestaticApplicationContextcontext;@OverridepublicvoidsetApplicationContext(ApplicationContextcontext)throwsBeansException{SpringContextUtils.context=context;}publicstaticApplicationContextgetContext(){returncontext;}}14 1publicclassSpringContextUtilsimplementsApplicationContextAware{2 privatestaticApplicationContextcontext;34 @Override5 publicvoidsetApplicationContext(ApplicationContextconte...
防止恶意攻击短信验证码接口方法
防止恶意攻击短信验证码接口方法1、手机号码限制:限制单个手机号码每天的最大发送次数。超过次数不能发送短信,可以考虑将手机号码加入黑名单,禁止1天。2、短信发送时间间隔限制:限制同一个手机号码重复发送的时间间隔。通常设置为60-120秒,前端做倒计时限制,时间未到不能点击发送短信按钮,后台也做时间间隔限制,时间未到不能发送短信。3、IP地址限制:限制每个IP地址每天的最大发送次数。防止通过同一个IP地址不同手机号码进行恶意攻击。超过次数不能发送短信,可以考虑将IP地址加入黑名单,禁止1天。可以考虑限制同一个IP地址每分钟的接口请求频率。4、发送流程限制:将流程分成两个步骤。如:注册用户,将发送短信验证码和设置用户名密码分成两个步骤,第一步一个页面用来设置用户名和密码,用户设置用户名和密码发送到后台,获取到后台返回的第一步成功回执之后,进入第二步另一个页面发送手机短信验证码。忘记密码,找回密码,第一步输入用户名,第二步发送短信验证码。5、增加图片验证码:发送短信验证码时,要求输入图片验证码,每个图片验证码仅能使用1次,使用1次后,不管输入的图片验证码是否正确自动失效。如果输入错误更新图片验...