api接口

使用NodeJS创建API接口,连接mysql数据库

江枫思渺然 提交于 2019-12-10 05:18:16
我在测试请求的时候,往往需要一些数据进行测试,通常数据是从服务器请求的,需要服务器暴露相应的请求URL才能请求到数据,所以我自己给自己搭建了一个本地服务器数据,使用NodeJS + MySQL搭建的。 重点是亲测有效!!!!!! 1.准备工作 nodeJS+ mysql 环境安装,此处可参考我的安装过程。 1.1 安装nodeJS 安装nodeJS 1.2 安装MySQL 安装MySQL 1.3 参考文章 express教程 、 RESTful API教程 、 连接 MySQL 2.主要操作 2.1 打开终端,安装express和mysql依赖 npm i express -S npm i mysql -S 2.2 创建一个js文件,如 server.js const express = require ( 'express' ) ; const app = express ( ) ; const mysql = require ( 'mysql' ) ; const connection = mysql . createConnection ( { host : 'localhost' , user : 'root' , port : '13306' , password : '******' , // 改成你自己的密码 database : 'NNM5' //

开放API接口或URL链接给第三方使用

為{幸葍}努か 提交于 2019-12-09 23:42:57
使用场景 场景1 应用做到一定程度后,会有一些第三方用户或机构要对接部分的功能进入他们自己的应用。 比如:要通过URL的方式提供一个含有加密视频文件的H5页面给第三方使用。 实现思路: 1. 后台管理系统给不同的第三方开权限,分别提供AppID和AppSecret 2. 服务端提供一个API接口(如:getAccessToken),入参为:AppID和AppSecret,返回值为:token(token要设置有效期,可以短一点) 3. 使用URL时带上token这个参数 4. 服务端校验token成功后开放权限 PS:也可以用AppID(应用的唯一标识)、AppKey(公匙)、AppSecret(私匙)三个参数来实现 场景2 类似微信支付、微信公众号的第三方接入应用。 实现思路: 参考OAuth 2.0的设计 什么是OAuth 2.0 什么是OAuth ? OAuth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频),而无需将用户名和密码提供给第三方应用。它是提供一个令牌来访问他们存放在特定服务提供者的数据,每一个令牌授权一个特定的网站在特定的时段内访问特定的资源。 什么是OAuth 2.0 ? OAuth 2.0是OAuth协议的下一版本,但不向后兼容OAuth。但OAuth 2.0保留了与OAuth相同的整体架构 。

ZooKeeper常用API

删除回忆录丶 提交于 2019-12-09 22:35:38
org.apache.zookeeper.Zookeeper Zookeeper 是在Java中客户端主类,负责建立与zookeeper集群的会话,并提供方法进行操作。 org.apache.zookeeper.Watcher Watcher接口表示一个标准的事件处理器,其定义了事件通知相关的逻辑,包含KeeperState和EventType两个枚举类,分别代表了通知状态和事件类型,同时定义了事件的回调方法:process(WatchedEvent event)。 process方法是Watcher接口中的一个回调方法,当ZooKeeper向客户端发送一个Watcher事件通知时,客户端就会对相应的process方法进行回调,从而实现对事件的处理。 基本使用 引入pom文件 <dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookeeper</artifactId> <version>3.4.9</version> </dependency> 创建一个子节点 package com.czxy.zookeeper.demo01; import org.apache.zookeeper.*; import java.io.IOException; /** * @author 550894211@qq

使用POI解析Excel

て烟熏妆下的殇ゞ 提交于 2019-12-09 14:45:35
Excel作为一种常用的数据存储格式,在很多项目中都会有相应的导入导出的功能。这篇文章会介绍如何使用Java操作Excel,以及如何解决大文件读写时内存溢出的问题。 1、OpenXML标准 Word、Excel、PPT是Office办公套件中最常用的三个组件。早期的Office套件使用二进制格式,这里面包括以.doc、.xls、.ppt为后缀的文件;直到07这个划时代的版本将基于XML的压缩格式作为默认文件格式,也就是相应以.docx、.xlsx、.pptx为后缀的文件。 这个结合了XML与Zip压缩技术的新文件格式使用的是OpenXML标准。微软从2000年开始酝酿这项技术标准,到2006年申请成为ECMA-376,然后在Office2007中用作默认的文件格式,再到08年成为了ISO / IEC 29500国际标准,后续每两三年就会发布一个新版本。Office的一路凯歌无不彰显微软雄厚的实力。 所以说三流公司做产品,二流公司做平台,一流公司定标准。 微软的官方文档中详细介绍了WordprocessingML(Word)、SpreadsheetML(Excel)、PresentationML(PPT)三个标准,这里主要介绍Excel的部分内容。 首先Excel几个最基础的概念: 一个Excel就是一个工作簿(Workbook) 一个Sheet就是一张表格

Java基础系列7——集合系列(1)框架概述

依然范特西╮ 提交于 2019-12-09 14:36:16
该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架。 集合框架概述 Java集合是java提供的工具包,包含了常用的数据结构:集合、链表、队列、栈、数组、映射等。Java集合工具包位置是java.util.* Java集合主要可以划分为4个部分:List列表、Set集合、Map映射、工具类(Iterator迭代器、Enumeration枚举类、Arrays和Collections) Java集合工具包框架图(如下): 下面我们来剖析一下这张结构图: 集合框架主要由两大块组成:Collection和Map Collection: Collection是一个接口,是高度抽象出来的集合,它包含了集合的基本操作和属性。Collection包含了List和Set两大分支。 (1)、List:List是有序队列,每一个元素都有它的索引,索引值从0开始,List的实现类有ArrayList、LinkedList、Vector、Stack (2)、Set:Set中的元素时不允许重复的,Set的实现类有HashSet、TreeSet。HashSet依赖于HashMap,它实际上是通过HashMap实现的;TreeSet依赖于TreeMap,它实际上是通过TreeMap实现的。

常用快递单号物流查询API接口通用对接指南(JAVA快递鸟对接)

夙愿已清 提交于 2019-12-08 11:38:33
快递查询接口通用API是给发货电商用来实现查询快递物流轨迹功能的,接口对接前要先到 快递鸟网站 申请接口秘钥和APIKEY 快递API的应用场景与用途 最常见的应用场景如下: (1)电商网站:例如B2C、团购、B2B、批发分销站、C2C、本地生活交易等网站。 (2)管理系统:订单处理平台、订货平台、发货平台、分销系统、渠道管理系统、客户管理系统、ERP等。 快递API的用途如下: (1)让顾客登录网站后,直接在“我的订单”页面内就能看到订单的物流状态。 (2)自动筛选出“已签收”、“疑难件”等状态的单号,减轻物流跟单人员的压力。 (3)改变订单的状态和交易流程,例如单号变为“已签收”,就能让订单变为可以确认退换货等。 (4)评估选择快递公司,根据“已签收”的运单数,可以算出销售人员的业绩,且便于应对的结算。 (5)邮件、短信提醒用户运单的最新状态,可以安抚用户,也可以利用邮件短信二次营销。 对接要求: (1)、查询接口支持按照运单号查询(单个查询,并发不超过10个/S)。 (2)、指定的物流运单号选择相应的快递公司编码,格式不对或则编码错误都会返失败的信息。如EMS物流单号应选择快递公司编码(EMS) (3)、返回的物流跟踪信息按照发生的时间升序排列。 (4)、接口指令1002 (5)、接口提供:快递鸟 (6)、请求地址:http://www.kdniao.com java请求示例

ASM(二) 利用Core API 变更类成员

一笑奈何 提交于 2019-12-08 10:04:46
之前一篇简单介绍了一下 ASM 框架。这一篇继续对CoreApi进行扩展。这里还是继续对ClassWriter ,ClassReader和ClassVisitor的应用的扩展。前面一篇主要介绍的是ClassWriter和ClassReader单独应用的场景。这一篇把这两者作为producer(ClassReader)和consumer(ClassWriter)来结合起来介绍一下另外一些用途。、 回顾: ASM 通过树这种数据结构来表示复杂的字节码结构,并利用 Push 模型来对树进行遍历,在遍历过程中对字节码进行修改。所谓的 Push 模型类似于简单的 Visitor 设计模式,因为需要处理字节码结构是固定的,所以不需要专门抽象出一种 Vistable 接口,而只需要提供 Visitor 接口。所谓 Visitor 模式和 Iterator 模式有点类似,它们都被用来遍历一些复杂的数据结构。Visitor 相当于用户派出的代表,深入到算法内部,由算法安排访问行程。Visitor 代表可以更换,但对算法流程无法干涉,因此是被动的,这也是它和 Iterator 模式由用户主动调遣算法方式的最大的区别。 在 ASM 中,提供了一个 ClassReader 类,这个类可以直接由字节数组或由 class 文件间接的获得字节码数据,它能正确的分析字节码,构建出抽象的树在内存中表示字节码

asm-giude阅读笔记003(ASM核心API接口和对应组件---读取字节码)

亡梦爱人 提交于 2019-12-08 09:58:46
2.2 接口和组件 2.2.1 介绍 ASM API 生成和转换Java字节码的操作都是基于ClassVisitor这个接口的。这个接口中的方法的方法名都是与字节码文件中节的名字对应的。 ClassVisitor 接口的代码清单: public interface ClassVisitor { void visit(int version, int access, String name, String signature, String superName, String[] interfaces); void visitSource(String source, String debug); void visitOuterClass(String owner, String name, String desc); AnnotationVisitor visitAnnotation(String desc, boolean visible); void visitAttribute(Attribute attr); void visitInnerClass(String name, String outerName, String innerName, int access); FieldVisitor visitField(int access, String name,

Retrofit的优点

倾然丶 夕夏残阳落幕 提交于 2019-12-08 04:20:33
Retrofit的优点 可以配置不同HTTP client来实现网络请求,如okhttp、httpclient等 将接口的定义与使用分离开来,实现结构。 支持多种返回数据解析的Converter可以快速进行数据转换。 和RxJava集成的很好 因为容易和RxJava结合使用,所以对于异步请求,同步请求也不需要做额外的工作。 Retrofit是基于OKHttp 简单使用 配置依赖 在module的build.gradle中添加 // Retrofit api "com.squareup.retrofit2:retrofit:2.3.0" api "com.squareup.retrofit2:converter-gson:2.3.0" api "com.squareup.retrofit2:adapter-rxjava2:2.3.0" // OkHttp3 api "com.squareup.okhttp3:okhttp:3.10.0" api "com.squareup.okhttp3:logging-interceptor:3.10.0" // RxJava2 api "io.reactivex.rxjava2:rxjava:2.1.9" api "io.reactivex.rxjava2:rxandroid:2.0.2" // RxLifecycle api "com

微信域名检测官方api接口的分享(含PHP、JAVA、Python调用文档)

懵懂的女人 提交于 2019-12-07 15:37:29
公司的广告业务量很大,因为微信对域名链接限制是非常严格,这就致使了外部链接域名什么的很容易在微信中跑着跑着就会被屏蔽了,但是他把你屏蔽了又不会跟你通知,这就导致经常跑了很长的时间,发现域名早就已经被屏蔽了,公司利益得到损失。 真的是挺烦的,但是域名太多了,根本没有办法一个个手动检查。后来我在网上找到了几个做微信域名检测的服务商。这里给大家分享一个好用的微信域名检测接口。 接口地址: http://www.maoapi.cn/wxymjc?url_long=http://www.baidu.com 接口说明: 把上面的微信域名检测api接口的"http://www.baidu.com"替换成需要检测的链接即可使用 返回说明: {"status":1,"msg":"域名正常"} {"status":0,"msg":"域名被封"} 返回情况总共分2种,返回1就代表域名在微信是正常的。返回0就代表域名被封了。 返回0表示你的域名出现了以下几种情况(调用文档在文末): 1、诱导分享 2、非微信官方网页 3、网页包含恶意欺诈内容 4、已停止访问该网页 5、如需浏览请长按复制浏览器打开 6、其他等等情况! 出现这几种情况,就代表你的域名是无法在微信中无法正常打开的,也就是我们说的被封了,被屏蔽了! 我们这边搭配了这个检测接口,并且我们自己开发了一套预警系统,就是把所有的域名仿在一个域名池