精华内容
下载资源
问答
  • 开放API

    2019-01-08 15:28:27
    1.开发API wanAndroid http://www.wanandroid.com/blog/show/2
    展开全文
  • 开放API接口

    2019-02-12 22:48:00
    开放API】——知乎、博客园等开放API接口(更新ing) Cnodejs.org:  https://cnodejs.org/api/ 和风天气:  http://docs.heweather.com/224489 干货集中营api:  http://gank.io/api V2EX API 接口...

    【开放API】——知乎、博客园等开放API接口(更新ing)

     

    Cnodejs.org:

      https://cnodejs.org/api/

    和风天气:

      http://docs.heweather.com/224489

    干货集中营api:

      http://gank.io/api

    V2EX API 接口:

      https://github.com/djyde/V2EX-API

    知乎日报API:

      https://github.com/izzyleung/ZhihuDailyPurify/wiki/%E7%9F%A5%E4%B9%8E%E6%97%A5%E6%8A%A5-API-%E5%88%86%E6%9E%90

    博客园: 

      博客服务接口: http://wcf.open.cnblogs.com/blog/help

      新闻服务接口: http://wcf.open.cnblogs.com/news/help

    dribbble:

      https://dribbble.com/

     破解防盗链图片:

    解决办法已经找到了,纯前端的解决办法就是使用一个跳板链接到该图片地址。可以使用下面的这个

    http://read.html5.qq.com/image?src=forum&q=5&r=0&imgflag=7&imageUrl=

    假如需要破解防盗链的图片链接是这样的

    http://pic2.zhimg.com/552373ccd73d9d61a87c1917194bcf55.jpg

    那么使用了跳板之后的链接就是这样写

    http://read.html5.qq.com/image?src=forum&q=5&r=0&imgflag=7&imageUrl=http://pic2.zhimg.com/552373ccd73d9d61a87c1917194bcf55.jpg

     

    转载于:https://www.cnblogs.com/hngdlxy143/p/10367439.html

    展开全文
  • 如何设计实现一个轻量的开放API网关. 文章地址: https://blog.piaoruiqing.com/blog/2019/08/05/开放api网关实践/ 前言 随着业务的发展, 所对接的第三方越来越多, 各个业务系统面临着同样一个问题: 如何让第三方...

    如何设计实现一个轻量的开放API网关.
    文章地址: https://blog.piaoruiqing.com/blog/2019/08/05/开放api网关实践/

    前言

    随着业务的发展, 所对接的第三方越来越多, 各个业务系统面临着同样一个问题: 如何让第三方安全快速接入. 此时有一个集验签、鉴权、限流、降级等功能于一身的API网关服务变得尤为重要.

    接下来将分享如何设计实现一个轻量级的API开放网关, 包括接口设计、数据库设计、签名验签方案、鉴权等. 本文侧重于总体设计, 具体实现细节将陆续在后续的文章中分享.

    API网关简介

    API网关在微服务中尤为重要, 其抽象了鉴权、限流、降级等各个业务系统通用的功能. 作为众多内部业务系统外的一层屏障.

    基本需求

    1. 签名及验签
    2. 鉴权
    3. 路由
    4. 权限及资源管理

    总体设计

    验签、鉴权等功能以职责链的方式进行处理, 网关根据配置进行路由并附加参数用以配合业务系统进行处理(如数据过滤等). 简要请求处理流程如下:

    发起请求
    no
    yes
    no
    yes
    START
    调用方
    开放API
    验签通过?
    END
    鉴权
    鉴权通过?
    附加参数
    向内部服务发起请求
    解析附加参数并处理请求

    接口设计

    网关最基本的功能是转发请求, 常见的方式是根据配置中的路由规则将请求转发给内部服务, 如:

    /order/*的请求转发给内部的订单系统、/user/*的请求转发给内部的用户系统, 这种做法常用于对整个业务系统负责的基础网关.

    而本文所设计的是服务于第三方的开放API网关, 并未使用上述做法, 而是将请求的资源作为参数放到请求体中, 其原因如下:

    1. 开放API服务于第三方, 屏蔽内部路径, 有利于提供命名统一且规范的接口.
    2. 请求接口的映射由网关的路由表维护, 内部接口升级甚至切换到新服务对外接口不变.
    3. 能够更细粒度地针对接口进行权限控制、限流、统计等.

    地址

    开放API网关对外提供唯一入口, 具体请求的资源作为参数传入.

    公共参数

    为了简化签名和验签的操作, 同时也提高灵活度, 唯一入口的约定了固定的公共参数和返回值, 如下:

    公共请求参数

    参数名称 是否必须 类型 示例 备注
    app_id string 应用ID
    method string aaa.bbb.ccc 请求方法
    charset string UTF-8 编码
    format string JSON 业务参数格式
    sign_type string RSA2 签名类型
    sign string 签名
    timestamp number 1564929661796 时间戳, 单位: 毫秒
    nonce string 63DCB93D270E44D49499F9E5D55705FE 随机字串(建议使用UUID)
    version string 1.0 接口版本
    biz_content string {“start_time”:“1564929661796”, …} 请求业务参数
    • app_id: 应用ID, 应用ID是授权的主体, 是调用方的身份标识
    • method: 请求方法, 与内部URL对应, 由网关的路由表维护.
    • timestampnonce用来防重放攻击.
    • biz_content: 业务参数, 这个参数将转发给内部业务系统.

    公共返回参数

    参数名称 是否必须 类型 示例 备注
    code number 0 错误码
    message string 错误信息
    charset string UTF-8 编码
    format string JSON 返回参数格式
    sign_type string RSA2 签名类型
    sign string 签名
    timestamp number 时间戳, 单位: 毫秒
    biz_content string {“id”:“1564929661796”, …} 返回业务参数
    • biz_content: 返回业务参数, 网关转发业务系统的返回值.

    [版权声明]
    本文发布于朴瑞卿的博客, 允许非商业用途转载, 但转载必须保留原作者朴瑞卿 及链接:blog.piaoruiqing.com. 如有授权方面的协商或合作, 请联系邮箱: piaoruiqing@gmail.com.

    签名方案

    调用方和服务方均生成2048RSA秘钥, 交换公钥. 私钥用于签名, 公钥用于验签, 开放API网关对外接口使用https, 故暂不需额外做加密处理.

    签名算法

    签名算法名称 标准签名算法名称 备注
    RSA2 SHA256WithRSA 强制要求 RSA 密钥的长度至少为 2048

    签名规则

    签名参数内容

    剔除sign之后的全部参数.

    签名参数排序

    按照参数名的ASCII码递增排序(字母升序排序).

    签名生成方式

    排序后的参数列表组合成参数名a=参数值a&参数名b=参数值b&...&参数名z=参数值z的字符串, 并使用私钥生成sign.

    数据库设计

    数据库用于存储秘钥权限等配置, 程序和数据库之间有多级缓存用以提高访问速度. 简要ER图如下:

    在这里插入图片描述

    • app: 调用方主体, 用于标识请求方身份.
    • group: 组, app分组, 可通过group统一进行授权.
    • subject: 主体(app/group).
    • resource: 资源, 维护请求资源与内部接口的映射关系, url+http_method 对应唯一的resource_id.

    技术选型

    网关除了满足功能上的需求外, 性能上的需求也需要着重考虑, 毕竟作为各个业务系统对外的唯一入口, 网关的性能可能会成为整个业务系统的瓶颈. 业务并不复杂, 性能要求高, 响应式编程正是一个不错的选择.

    • Spring WebFlux + netty: 响应式Web框架.
    • Spring Data Reactive Redis + Lettuce: 响应式redis客户端.
    • Guava: Google工具包, 使用LoadingCache作为进程内缓存.

    结语

    网关作为内部系统外面的一层屏障和入口, 除基本功能和性能上的需求外, 监控、统计、日志等都是需要考虑到的问题, 网关方面开源产品众多, 但选择时一定要考虑自身业务, 适合自身的前提下参考各个成熟的方案进行实践.

    [版权声明]
    本文发布于朴瑞卿的博客, 允许非商业用途转载, 但转载必须保留原作者朴瑞卿 及链接:blog.piaoruiqing.com. 如有授权方面的协商或合作, 请联系邮箱: piaoruiqing@gmail.com.

    展开全文
  • 区块链开放API大全

    千次阅读 2018-12-30 17:12:00
    作为一个区块链应用开发者,除了可以利用本地节点的API实现你想要的特性, 还可以借助众多的云端开放API来简化实现或者增强功能。下表为区块链与数字 加密货币领域的开放API: API 说明 身份认证 HTTPS ...

    作为一个区块链应用开发者,除了可以利用本地节点的API实现你想要的特性, 还可以借助众多的云端开放API来简化实现或者增强功能。下表为区块链与数字 加密货币领域的开放API:

    API 说明 身份认证 HTTPS CORS
    Binance 币安交易所API apiKey  
    BitcoinAverage 区块链数字资产的价格信息API apiKey  
    BitcoinCharts 比特币网络相关的财经与技术数据API    
    Bitfinex 加密货币交易平台API apiKey  
    Bitmex 实时加密货币衍生品交易平台API apiKey  
    Bittrex 下一代加密货币交易平台API apiKey  
    Block 比特币支付、钱包和交易数据API apiKey  
    Blockchain 比特币支付、钱包和交易数据API    
    Chasing Coin 数字加密货币、代币数据API    
    CoinAPI 数字货币交易所和数字资产信息API apiKey 不支持
    Coinbase 比特币、比特币现金、莱特币和以太坊价格信息API apiKey  
    Coinbase Pro 数字加密币交易平台API apiKey  
    CoinBin 虚拟货币信息API    
    CoinDesk 比特币价格指数API      
    Coinigy Coinigy交易所及账户API apiKey  
    CoinLayer 数字加密货币实时汇率API apiKey  
    Coinlore 数字加密货币价格、流量等信息API    
    CoinMarketCap 数字加密货币价格API    
    Coinpaprika 数字加密货币价格、流量等信息API   支持
    CoinRanking 实时数字加密货币信息API    
    CryptoCompare 数字加密货币比较API    
    Cryptonator 数字加密货币汇率API    
    Gemini Gemini交易所API    
    ICObench 数字加密货币首次上市、评级、统计等信息API apiKey  
    Livecoin 交易所API    
    MercadoBitcoin 巴西的交易所信息API    
    Nexchange 数字加密货币自动兑换API     支持
    NiceHash 最大的加密货币矿场API apiKey  
    Poloniex 数字资产交易所API apiKey  
    WorldCoinIndex 数字加密货币价格信息API apiKey  
    Zloader 尽职调查数据平台API apiKey  

    本文由汇智网翻译整理,转载请标明出处。

    • EOS教程,本课程帮助你快速入门EOS区块链去中心化应用的开发,内容涵盖EOS工具链、账户与钱包、发行代币、智能合约开发与部署、使用代码与智能合约交互等核心知识点,最后综合运用各知识点完成一个便签DApp的开发。
    • java以太坊开发教程,主要是针对java和android程序员进行区块链以太坊开发的web3j详解。
    • python以太坊,主要是针对python工程师使用web3.py进行区块链以太坊开发的详解。
    • php以太坊,主要是介绍使用php进行智能合约开发交互,进行账号创建、交易、转账、代币开发以及过滤器和交易等内容。
    • 以太坊入门教程,主要介绍智能合约与dapp应用开发,适合入门。
    • 以太坊开发进阶教程,主要是介绍使用node.js、mongodb、区块链、ipfs实现去中心化电商DApp实战,适合进阶。
    • C#以太坊,主要讲解如何使用C#开发基于.Net的以太坊应用,包括账户管理、状态与交易、智能合约开发与交互、过滤器和交易等。
    • java比特币开发教程,本课程面向初学者,内容即涵盖比特币的核心概念,例如区块链存储、去中心化共识机制、密钥与脚本、交易与UTXO等,同时也详细讲解如何在Java代码中集成比特币支持功能,例如创建地址、管理钱包、构造裸交易等,是Java工程师不可多得的比特币开发学习课程。
    • php比特币开发教程,本课程面向初学者,内容即涵盖比特币的核心概念,例如区块链存储、去中心化共识机制、密钥与脚本、交易与UTXO等,同时也详细讲解如何在Php代码中集成比特币支持功能,例如创建地址、管理钱包、构造裸交易等,是Php工程师不可多得的比特币开发学习课程。
    • tendermint区块链开发详解,本课程适合希望使用tendermint进行区块链开发的工程师,课程内容即包括tendermint应用开发模型中的核心概念,例如ABCI接口、默克尔树、多版本状态库等,也包括代币发行等丰富的实操代码,是go语言工程师快速入门区块链开发的最佳选择。

     

    展开全文
  • 常见开放API

    2016-02-19 09:27:58
    所谓的开放API(OpenAPI)是服务型网站常见的一种应用,网站的服务商将自己的网站服务封装成一系列 API(Application Programming Interface,应用编程接口)开放出去,供第三方开发者使用,这种行为就叫做开放网站...
  • 百度知道开放api

    2012-10-31 17:26:27
    百度知道开放api接口规范文档1.0 最终版下载
  • ECOS开放API

    2016-01-26 12:12:02
    1 开放API(openapi) 开放API, 是很轻量级的API. 系统不支持签名验证, 也没有做异常处理. 因此可以按照实际业务需要定制开发签名验证和异常处理. 1.1 请求地址 http://{$mydomain}/index.php/openapi/{$openapi_key}...
  • 开放api平台

    2014-12-02 11:27:42
    http://apistore.baidu.com/ 开放api平台
  • 开放API接口安全校验的背景: 在未进行安全处理的开放 API 接口存在诸多的风险问题,如以下三种常见场景: 1、场景一 A 公司开发的开放 API 未对接口进行安全控制,有黑客通过爬虫程序调用开放 API 查询客户信息的...
  • 开放API接口安全处理

    2018-12-11 01:25:00
    一、开放API接口定义 顾名思义,开放出来给其他人调用的API接口就是开放API接口。例如,短信接口、邮件接口。 二、开放API的弱点 数据窃取 用户的密码等信息被不轨之人窃取,登录账号发布敏感信息,盗刷等。 ...
  • 从本文你可以学会使用SpringBoot结合Swagger开放API,同时使用SpringCloud Feign组件来调用API。 本文如题分为两部分SpringBoot结合Swagger开放API,SpringCloud-Feign调用API。 项目源码:iponkan-openapi ...
  • 腾讯企业QQ开放API接口 文正文档,API 接口 内部文档
  • 简介: 根据鸿洋大神提供的 WanAndroid 开放 API 制作 更多:作者提 Bug官网 标签: 根据鸿洋大神的 WanAndroid 网站提供的开放 API 制作 GitHub 主页 前言 开发初期主要是为了试水一些自己开发的开源框架,...
  • 开放API(OpenAPI)

    千次阅读 2015-12-14 14:16:15
    所谓的开放API(OpenAPI)是服务型网站常见的一种应用,网站的服务商将自己的网站服务封装成一系列API(Application Programming Interface,应用编程接口)开放出去,供第三方开发者使用,这种行为就叫做开放网站的...
  • 数据中台架构 开放api 什么是API [第一]? 不久前,我在全国政府网络专业人员协会上发言。 在同一个会议上,马克·黑德(Mark Headd)发言。 我们在谈论不同的开放数据主题。 我的讨论是关于开放政府与开放数据...
  • 小米Yeelight智能灯开放API与通信协议,可以控制他们的灯了
  • 运动手环开放api 在GNU和Linux项目不起眼的初期,开源是一个原始且狭义的想法。 它仅适用于编程,并且在很大程度上是合法的名称,其目的是保证即使其他人通过后续贡献来增强源代码,用户也仍然可以使用源代码。 三...
  • 小米Yeelight智能灯开放API_Qt_Demo
  • 网关指南: https://help.aliyun.com/document_detail/29487.html?spm=5176.doc48835.6.550.23Oqbl 网关控制台: ...开放API并接入API网关:...
  • 设置自己申请的api secret,等,设置自己的淘宝昵称,不需要密码,就可以提取出淘宝产品信息的示例.vs2010开发环境
  • 关于博客园开放API的授权问题解决
  • bigbluebutton中文社区 / 开放API / bbb API

    千次阅读 2016-07-12 09:10:44
    bigbluebutton中文社区 / 开放API / bbb API  创建会议 这个接口可以重复调用多次,而不会有副作用。这带来的好处就是能简化应用程序加会的流程,无论什么用户想要加会,都可以先创建会议而不用担心会议不...
  • 天行数据的开放API接口

    千次阅读 2019-05-15 13:36:19
    天行数据的开放API接口: 接口名称 链接 简介 微信链接转换 https://www.tianapi.com/apiview/89 将临时链接转为永久链接 查询微信全文 https://www.tianapi.com/apiview/88 获取微信全文...
  • 作为一个区块链应用开发者,除了可以利用本地节点的API实现你想要的特性, 还可以借助众多的云端开放API来简化实现或者增强功能。下表为区块链与数字 加密货币领域的开放API: API 说明 身份认证 HTTPS CORS ...
  • 淘宝开放API初探

    2013-02-26 21:34:00
    最近在学习Python和JSON,在网上搜索资料的时候,发现了淘宝的开放平台,经过研究,发现这个平台挺...下面就简单介绍下淘宝开放API的使用以及测试方法。 1、打开开放平台地址 这里可以进行API调用测试,查看返...
  • 开放API,API是应用程序编程接口的意思,开放API就是开放应用程序编程接口。如果说程序开放API就是说开放接口,以让别人的程序能够调用你的程序数据。就像你的电脑、手机等有一些USB接口,也可以说是开放了接口,有...
  • 免费开放API接口

    万次阅读 2019-01-18 16:17:20
    详细信息请进入:https://www.wangshuwen.com 目前接口列表: 1.省市区(县)街道四级联动: http://api.wangshuwen.com/getRegion ... 2.根据ip地址获取位置信息: http://api.wangshuwen.com/ip2Lo...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 18,443
精华内容 7,377
关键字:

开放api