目前可用的API如下
User-Agent解析(User-Agent Device Parser)
中国银行外汇牌价(Bank of China RMB Exchange Rate)
IP Location Parser API
接口地址:https://api.hanada.info/ip
返回格式:text/json
请求方式:GET
请求参数
参数名 | 类型 | 必填 | 缺省值 | 说明 |
---|---|---|---|---|
ip | string | 否 | {请求者IP} | 用于分析的IP地址。 若缺省或不是合法的IPV4或IPV6地址则直接获取请求端的IP并作分析。 例1:113.108.182.52 例2:240e:ff:b55a:f9fe:75a5:98d8:f020:9084 |
database | string | 否 | ipip | 数据库类型。 可选值为ipip和chunzhen,对应IPIP数据库和纯真IP数据库。 PIP数据库是实时请求IPIP.NET的API的,所以有一定几率会请求失败,请求失败时会用chunzhen离线数据库解析。 当解析的IP地址为IPV6时,将无条件使用IPIP数据库解析(纯真IP数据库不支持IPV6) |
format | string | 否 | json | 指定返回格式。可选值为ip、json,当参数值为ip时不解析地理位置,直接以纯文本返回请求端的ip |
请求示例
https://api.hanada.info/ip/?database=ipip&ip=113.108.182.52
https://api.hanada.info/ip/?database=ipip&ip=240e:ff:b55a:f9fe:75a5:98d8:f020:9084
https://api.hanada.info/ip/?format=ip
返回结果
{ "code": 200, //HTTP状态码 "msg": "success", //结果说明,若为success则正常返回 "title": "IP Location Parser", //API名称 "database": "ipip", //IP数据库 "ip": "113.108.182.52", //解析的IP地址 "ipver": 4, //IP地址类型,4为IPV4,6为IPV6 "location": { "country": "中国", //国家 "province": "广东", //省/自治区/直辖市/特别行政区/州/郡/府/县等 "city": "广州", //地区或城市 "company": "", //单位或学校 "isp": "电信" //运营商 } } { "database": "chunzhen", //IP数据库 "ip": "113.108.182.52", //解析的IP地址 "ipver": 4, //IP地址类型,4为IPV4,6为IPV6 "location": { "country": "中国广东广州", //国家地区城市 "isp": "电信" //运营商 } } 113.108.182.52 //指定参数format=js时只返回ip地址
QRCode API
接口地址:https://api.hanada.info/qr
返回格式:image/png
请求方式:GET
请求参数
参数名 | 类型 | 必填 | 缺省值 | 说明 |
---|---|---|---|---|
text | string | 是 | 生成的二维码包含的内容 可为纯文本或URL,若为URL需urlencode。 例:https%3a%2f%2fhanada.info |
|
margin | int | 否 | 1 | 二维码白色边框尺寸等级 可选参数为1-10。参数越高,边框越宽。 |
size | int | 否 | 二维码图片尺寸 单位为px,缺省时将根据容错级别和尺寸等级自动指定。 |
|
point | int | 否 | 6 | 二维码图片尺寸等级 可选参数为1-10。参数越高,图片尺寸越大。 size参数非缺省时本参数无效。 |
err | string | 否 | M | 容错级别(errorLevel) 容错率越高越容易被识别,但图片复杂度也会相应提高。 可选参数如下: L 7% M 15% Q 25% H 30% |
请求示例
https://api.hanada.info/qr?margin=1&err=M&size=300&point=6&text=https%3a%2f%2fhanada.info
返回结果
以下为请求示例链接后生成的图片:
User-Agent Device Parser API
接口地址:https://api.hanada.info/ua
返回格式:text/json
请求方式:GET
请求参数
参数名 | 类型 | 必填 | 缺省值 | 说明 |
---|---|---|---|---|
ua | string | 否 | {请求者UA} | 用于分析的User-Agent。 需urlencode。若缺省则获取请求端User-Agent并分析。 例:Mozilla/5.0%20(Linux;%20Android%208.0.0;%20MI%206)%20AppleWebKit/537.36%20(KHTML,%20like%20Gecko)%20Chrome/73.0.3683.90%20Mobile%20Safari/537.36 (urlencode前:Mozilla/5.0 (Linux; Android 8.0.0; MI 6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.90 Mobile Safari/537.36) |
返回结果
{ "code": 200, //HTTP状态码 "msg": "success", //结果说明,若为success则正常返回 "title": "User-Agent Device Parser", //API名称 "useragent": "Mozilla/5.0 (Linux; Android 8.0.0; MI 6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.90 Mobile Safari/537.36", //用于分析的UA "browser": { //浏览器信息 "stock": false, "hidden": false, "channel": "Nightly", "name": "Chrome", //浏览器名称 "version": { //浏览器版本 "original": "73.0.3683.90" } }, "engine": { "name": "Webkit", //浏览器内核 "version": { "original": "537.36", //内核版本 "alias": null } }, "os": { //操作系统信息 "name": "Android", //操作系统名称 "version": { //操作系统版本 "alias": "8.0.0", "original": "8.0.0" } }, "device": { //设备信息 "type": "mobile", //设备类型 "identified": false, "manufacturer": "Xiaomi", //制造商 "model": "MI-6" //设备型号 }, "camouflage": false, "features": [] }
URL Shorter API
接口地址:https://api.hanada.info/shorturl
返回格式:text/json、text/plain、image/png
请求方式:GET
请求参数
参数名 | 类型 | 必填 | 缺省值 | 说明 |
---|---|---|---|---|
domain | string | 否 | t.cn | 短网址域名 目前提供t.cn(新浪短网址)、url.cn(腾讯提供服务)、dwz.cn(百度提供服务)、u.nu(unu)四种短网址类型。 可选参数为t.cn、url.cn、dwz.cn、u.nu 注:dwz.cn会拒绝解析未被百度收录的网址、u.nu会拒绝解析进行了重定向的网址(包括但不限于301和302重定向)。 |
keyword | string | 否 | 仅在domain参数为u.nu时有效,可以为域名指定对应的短网址后缀,即指定[keyword]后短网址为u.nu/[keyword] 例:https://example.com/的keyword为example,短网址为u.nu/example。 注:
|
|
force | boolean | 否 | false | 仅在domain参数为u.nu、keyword非缺省时有效。当force参数为true时,当指定keyword已被占用,仍然直接生成短网址,keyword随机生成。 当force参数为false时,当指定keyword已被占用,返回错误信息。 |
url | string | 是 | 用于生成短网址的原网址,需要urlencode。 | |
format | string | 可选 | url | 输出的格式 可选参数为url、json和qrcode。 格式为url时,直接输出短网址; 格式为json时,以json格式输出短网址等信息; 格式为qrcode,将生成的短网址编码为二维码图片并输出。 |
margin | int | 否 | 1 | 二维码白色边框尺寸等级 可选参数为1-10。参数越高,边框越宽。 |
size | int | 否 | 二维码图片尺寸 单位为px,缺省时将根据容错级别和尺寸等级自动指定。 |
|
point | int | 否 | 6 | 二维码图片尺寸等级 可选参数为1-10。参数越高,图片尺寸越大。 size参数非缺省时本参数无效。 |
err | string | 否 | M | 容错级别(errorLevel) 容错率越高越容易被识别,但图片复杂度也会相应提高。 可选参数如下: L 7% M 15% Q 25% H 30% |
请求示例
https://api.hanada.info/shorturl?domain=t.cn&format=url&url=https%3a%2f%2fwww.baidu.com%2f
https://api.hanada.info/shorturl?domain=t.cn&format=json&url=https%3a%2f%2fwww.baidu.com%2f
https://api.hanada.info/shorturl?domain=t.cn&format=qrcode&url=https%3a%2f%2fwww.baidu.com%2f
返回结果
直接输出:
https://t.cn/Ryh0P2j
JSON输出:
{ "code": 200, "msg": "success", "title": "Shorturl generate", "long_url": "https://www.baidu.com/", //原网址 "short_url": ""https://t.cn/Ryh0Ph9" //短网址 }
二维码输出:
URL Recover API
接口地址:https://api.hanada.info/shorturltolong
返回格式:text/json、text/plain
请求方式:GET
请求参数
参数名 | 类型 | 必填 | 缺省值 | 说明 |
---|---|---|---|---|
url | string | 是 | 用于还原的短网址(其他做了301、302的类似网址也可),需要urlencode。 | |
format | string | 可选 | url | 输出的格式 可选参数为url、json。 格式为url时,直接输出还原后的长网址; 格式为json时,以json格式输出长网址等信息。 |
请求示例
https://api.hanada.info/shorturltolong/?format=url&url=https%3A%2F%2Ft.cn%2FRyh0Ph9
https://api.hanada.info/shorturltolong/?format=json&url=https%3A%2F%2Ft.cn%2FRyh0Ph9
返回结果
直接输出:
https://www.baidu.com/
JSON输出:
{ "code": 200, "msg": "success", "title": "Shorturl Recover to Longurl", "shorturl": "https://t.cn/Ryh0Ph9", //短网址 "longurl": "https://www.baidu.com/" //还原后的网址 }
Bing Wallpaper
接口地址:https://api.hanada.info/bing
返回格式:text/json、text/plain、image/jpeg(302)
请求方式:GET
请求参数
参数名 | 类型 | 必填 | 缺省值 | 说明 |
---|---|---|---|---|
format | string | 否 | image | 输出的格式 可选参数为url、json、image。 格式为url时,直接输出图片地址; 格式为json时,以json格式输出图片地址等信息。 格式为image时,直接302重定向到图片地址 |
id | int | 否 | 0 | 标识图片日期偏移量 可选参数为-1-14,为0时输出今日图片,为-1时输出明日图片,为1时输出昨日图片,以此类推。 |
请求示例
https://api.hanada.info/bing
返回结果
以下为请求示例链接后生成的图片:
若format参数为url,则输出(该链接于2019年5月1日生成):
https://s.cn.bing.net/th?id=OHR.may1_ZH-CN8582006115_1920x1080.jpg&rf=LaDigue_1920x1080.jpg&pid=hp
若format参数为json,则输出(该链接于2019年5月1日生成):
{ "code": 200, "msg": "success", "title": "Bing Daily Wallpaper", "title": "【今日劳动节】 (© Katvic/Shutterstock)", //图片标题 "date": "20190430", //图片日期 "url": "https://s.cn.bing.net/th?id=OHR.may1_ZH-CN8582006115_1920x1080.jpg&rf=LaDigue_1920x1080.jpg&pid=hp" //图片url }
Bank of China CNY Exchange Rate API
接口地址:https://api.hanada.info/bocexchangerate
返回格式:text/json
请求方式:GET
请求参数
参数名 | 类型 | 必填 | 缺省值 | 说明 |
---|---|---|---|---|
currency | string | 否 | 指定外汇币种,若未指定则返回所有币种。 币种由三位英文缩写组成,可选值如下: 阿联酋迪拉姆:AED 澳大利亚元:AUD 巴西里亚尔:BRL 加拿大元:CAD 瑞士法郎:CHF 丹麦克朗:DKK 欧元:EUR 英镑:GBP 港币:HKD 印尼卢比:IDR 印度卢比:INR 日元:JPY 韩国元:KRW 澳门元:MOP 林吉特:MYR 挪威克朗:NOK 新西兰元:NZD 菲律宾比索:PHP 卢布:RUB 沙特里亚尔:SAR 瑞典克朗:SEK 新加坡元:SGD 泰国铢:THB 土耳其里拉:TRY 新台币:TWD 美元:USD 南非兰特:ZAR |
请求示例
https://api.hanada.info/bocexchangerate?currency=usd
返回结果
{ "code": 200, "msg": "success", "title": "Bank of China CNY Exchange Rate", "USD": { "currency": { "cn": "美元", //币种(中文) "en": "USD" //币种(英文三字母缩写) }, "date": { "timestamp": 1564465803, //中国银行本次汇率发布时间戳 "gmt": "2019-07-30 05:50:03", //中国银行本次汇率发布时间戳 "gmt+8": "2019-07-30 13:50:03" //中国银行本次汇率发布时间(GMT+8 北京时间) }, "rate": { "buyingrate": { "en": "Buying Rate", "cn": "现汇买入价", "value": 687.78 //现汇买入价 }, "cashbuyingrate": { "en": "Cash Buying Rate", "cn": "现钞买入价", "value": 682.19 //现钞买入价 }, "sellingrate": { "en": "Selling Rate", "cn": "现汇卖出价", "value": 690.7 //现汇卖出价 }, "cashsellingrate": { "en": "Cash Selling Rate", "cn": "现钞卖出价", "value": 690.7 //现钞卖出价 }, "middlerate": { "en": "Middle Rate", "cn": "中行折算价", "value": 688.62 //中行折算价 } } } } 注:汇率单位为100外币换算人民币,为0时表明无数据。数据非实时同步,每15分钟从中国银行官网外汇牌价页面(https://www.boc.cn/sourcedb/whpj/)拉取新数据,数据仅供参考。
Get Gravatar API
接口地址:https://api.hanada.info/gravatar
返回格式:text/json、text/plain、text/jpeg(302)
请求方式:GET
请求参数
参数名 | 类型 | 必填 | 缺省值 | 说明 |
---|---|---|---|---|
string | 否 | 邮箱地址,email和md5参数必须填写其中一个。 | ||
md5 | string | 否 | md5哈希后的邮箱地址,email和md5参数必须填写其中一个。 | |
cdn | string | 否 | hanada | 指定的CDN地址,可选source(即不使用反向代理、CDN等)、hanada(本站提供的CDN服务)、v2ex(cdn.v2ex.com)、geekzu(sdn.geekzu.org)。 |
size | int | 否 | 80 | 头像的大小,单位为px,最大为512。 |
default | string | 否 | mm | 若请求邮箱不存在或未设置头像时输出的默认的头像。有以下参数。 404: do not load any image if none is associated with the email hash, instead return an HTTP 404 (File Not Found) response mm: (mystery-man) a simple, cartoon-style silhouetted outline of a person (does not vary by email hash) identicon: a geometric pattern based on an email hash monsterid: a generated 'monster' with different colors, faces, etc wavatar: generated faces with differing features and backgrounds retro: awesome generated, 8-bit arcade-style pixelated faces blank: a transparent PNG image (border added to HTML below for demonstration purposes) |
format | string | 否 | image | 返回结果方式,若为json,则以json方式返回;若为url则直接返回头像url地址;若为image则302重定向到头像地址。 |
请求示例
https://api.hanada.info/gravatar/[email protected]
返回结果
参数format为image
参数format为url
https://gravatar.hanada.info/avatar/df71be62d601ddfee21b564c74451d2f?s=80&d=mm
参数format为json
{ "code": 200, "msg": "success", "title": "Gravatar", "url": "https://gravatar.hanada.info/avatar/df71be62d601ddfee21b564c74451d2f?s=80&d=mm" //Gravatar头像地址 }
若头像不存在
{ "code": 200, "msg": "error", "error": "No Gravatar for this email", "title": "Gravatar", "url": "https://gravatar.hanada.info/avatar/75e48a7020624657e5da6033590030ee?s=80&d=mm" }