一言(ヒトコト)Hitokoto API

Hitokoto API
更新:2014.02.22
问题/反馈:api # hitokoto.us
数据获取:[ 数据获取 ]
调用举例:[ JavaScript + HTML (同步) ] [ JavaScript
+ JSON CallBack (同步+异步调用两种) ]
点此看看哪些网站正在使用API
数据获取
- 请求地址http://api.hitokoto.us/rand
- SSLhttps://api.hitokoto.us:214/rand
- 请求方式GET
- 请求参数
- cat返回指定分类的一句话,如果为空则返回任意分类的一言。若请求参数包含uid,则cat对应cid
- charset字符集,支持gbk/utf-8,默认为utf-8
- length返回一句话的长度限制,超出则打断并添加省略号
- encode数据格式,对应如下
- json默认为此,返回JSON格式数据
- xml返回XML格式数据
- js返回函数名为hitokoto的JavaScript脚本,用于同步调用
- jsc返回指定CallBack函数名的JavaScript脚本,可用于异步调用
- fun用于异步调用时,指定CallBack的函数名,不可包含特殊字符
- uid获取“我的一言”
- mix同时在系统收录的“一言”和获取“我的一言”中随机,若需指定用户分类请使用ucat参数
- ucat配合mix参数使用,用于指定用户分类CID
- 实例
- 请求http://api.hitokoto.us/rand?cat=a&charset=utf-8
- 返回
-
{
id : "1318722783000",
hitokoto : "呐,知道么,樱花飘落的速度,是每秒五厘米哦~",
cat : "a",
catname : "动画",
author : "烤飞鱼的土豆",
source : "秒速五厘米",
like : "5",
date : "2011.10.15 23:53:03"
} - 参数说明
- id一言的ID,可以通过 http://hitokoto.us/view/{ID}.html 查看指定条目
- hitokoto一言的正文部分,不包含前后引号
- cat分类,对应关系如下
- aAnime - 动画
- bComic - 漫画
- cGame - 游戏
- dNovel - 小说
- e原创
- f来自网络
- g其他
- catname分类cat对应的名字
- author一言的投稿人
- source一言的出处,可能为空
- like一言的喜欢次数
- date一言的投稿日期
调用举例 - JavaScript + HTML
- 脚本地址http://api.hitokoto.us/rand?encode=js
- SSLhttps://api.hitokoto.us:214/rand?encode=js
- 使用方法
-
1. 将下面这段代码放入HTML页面的head标签内
<script type="text/javascript" src="http://api.hitokoto.us/rand?encode=js&charset=utf-8"></script>
2. 将下面这段代码放入页面内需要展示一句话的位置即可
<div id="hitokoto"><script>hitokoto()</script></div>
该脚本实质为document.write的脚本。
调用举例 - JavaScript + JSON CallBack
- 脚本地址http://api.hitokoto.us/rand?encode=jsc
- SSLhttps://api.hitokoto.us:214/rand?encode=jsc
- 使用方法
- 同步
-
1. 将下面这段代码放入HTML页面的head标签内
<script type="text/javascript" src="http://api.hitokoto.us/rand?encode=jsc&fun=sync"></script>
该脚本会与页面同步加载,加载成功后会自动调用指定的函数名,本实例中为sync,并将数据传递给该函数,提前定义该函数即刻达到接收并处理一言数据的目的。 - 异步
-
1. 将下面这段代码放入HTML页面的最底部
<script type="text/javascript">setTimeout(function(){var hjs=document.createElement('script');hjs.setAttribute('src','http://api.hitokoto.us/rand?encode=jsc&fun=async');document.body.appendChild(hjs);},100);</script>
通过setTimeout加载JavaScript脚本达到异步加载js脚本的目的,加载成功后会自动调用指定的函数名,本实例中为async,并将数据传递给该函数,提前定义该函数即刻达到接收并处理一言数据的目的。
迷失在幽谷中的鸟儿,独自飞翔在这偌大的天地间,却不知自己该飞往何方……
一言(ヒトコト)Hitokoto API的更多相关文章
- LWL-Hitokoto API(一言-纯净API)
著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.作者:liwanglin12链接:https://blog.lwl12.com/read/hitokoto-api.html来源:L ...
- Ajax之调用一言网站API接口
Ajax的作用,主要是实现局部刷新. 通过老大哥告知,Ajax接口可以使用一言网站的,所以自己就练了一下子. 本文所有用到的接口都来自一言网站:https://hitokoto.cn/api 通过网站 ...
- Butterfly侧边栏引入一言
此教程涉及修改源码 背景 在修改每页显示7篇文章后,出现了这种情况. 这是完美主义(强迫症)的我所不能忍受的,有什么可以占据这里的呢?{% btn 'https://hitokoto.cn/',一言, ...
- (ヒトコト)一个挺有趣的东西!作为一个动漫宅,游戏宅来说还是一个挺有趣的接口!banner上面就是
Hitokoto API 更新:2014.02.22 问题/反馈:api # hitokoto.us 数据获取:[ 数据获取 ] 调用举例:[ JavaScript + HTML (同步) ] [ J ...
- Cnblog页面美化小记
Cnblog页面美化小记 这两天我在网上翻找了许许多多的资料,打开了不计其数的博客,对着\(js\).\(html\).\(css\)等文件删删改改,在浏览器和\(vscode\)间辗转腾挪...总算 ...
- Chris Richardson微服务翻译:构建微服务之微服务架构的进程通讯
Chris Richardson 微服务系列翻译全7篇链接: 微服务介绍 构建微服务之使用API网关 构建微服务之微服务架构的进程通讯(本文) 微服务架构中的服务发现 微服务之事件驱动的数据管理 微服 ...
- 微服务RESTful 接口设计规范
1.RESTful发展背景及简介 网络应用程序,分为前端和后端两个部分.当前的发展趋势,就是前端设备层出不穷(手机.平板.桌面电脑.其他专用设备......).因此,必须有一种统一的机制,方便不同的前 ...
- Hibernate(4)——主键生成策略、CRUD 基础API区别的总结 和 注解的使用
俗话说,自己写的代码,6个月后也是别人的代码……复习!复习!复习!涉及的知识点总结如下: hibernate的主键生成策略 UUID 配置的补充:hbm2ddl.auto属性用法 注解还是配置文件 h ...
- Nodejs之MEAN栈开发(三)---- 使用Mongoose创建模型及API
继续开扒我们的MEAN栈开发之路,前面两节我们学习了Express.Jade引擎并创建了几个静态页面,最后通过Heroku部署了应用. Nodejs之MEAN栈开发(一)---- 路由与控制器 Nod ...
随机推荐
- Android自己主动化构建之Ant多渠道打包实践(下)
前言 上一篇(Android自己主动化构建之Ant多渠道打包实践(上))已经介绍了Android的apk是怎样构建的,本篇博客继续Ant打包的实践过程. 集成友盟统计SDK 这里以友盟统计为例,对各个 ...
- 【网络优化|渣速必看】合理设置MTU,提升网络速度
可能很少网友注意过“本机.网络”的“MTU”值对自己网络性能产生的影响.对于追求更快的下载速度来说,MTU值设置不当,就仿佛穿着高跟鞋跑步一般. MTU是什么? “MTU=最大传输单元 单位:字节” ...
- python学习【第八篇】python模块
模块与包 模块的概念 在python中一个.py文件就是一个模块. 使用模块可以提高代码的可维护性. 模块分为三种: python标准库 第三方模块 自定义模块 模块的导入方法 1.import语句 ...
- 常见cout格式输出
cout.setf(ios::fixed);//设置格式 cout.unsetf(ios::fixed);//取消格式 cout.setf(ios::scientific);//科学记数法 cout. ...
- 《从零开始学Swift》学习笔记(Day 9)——离开表达式你试试!
原创文章,欢迎转载.转载请注明:关东升的博客 表达式啊是很重要地. 在Swift中,表达式有3种形式. 不指定数据类型 var a1 = 10 指定数据类型 var a1:Int = 10 使用分号 ...
- IDEA : Git Pull Failed 解决(IDEA中使用stash功能)
一.问题: 本地要commit代码,commit之前需pull代码,但pull提示冲突.如下 Git Pull Failed Your local changes would be overwritt ...
- 从jarray中删除指定元素的问题
string jsonText = "[{\"a\": \"aaa\",\"b\": \"bbb\",\&qu ...
- python系列十三:Python3 输入输出
#!/usr/bin/python #Python3 输入输出 import math'''输出格式美化Python两种输出值的方式: 表达式语句和 print() 函数.第三种方式是使用文件对象的 ...
- 小白学linux命令
小白是景女神全栈开发股份有限公司的一名财务实习员工,经过3个月的实习期,小白是过五关斩六将啊!终于成为了公司的一名正式员工,而且收到了景总亲自发来贺喜的邮件:“欢迎你加入大家庭,公司也本着员工全面发展 ...
- Nuxt使用Vuex
Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化. 基础知识这里不再重述,学习的话请自行到官网 ...