(ヒトコト)一个挺有趣的东西!作为一个动漫宅,游戏宅来说还是一个挺有趣的接口!banner上面就是
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,并将数据传递给该函数,提前定义该函数即刻达到接收并处理一言数据的目的。
(ヒトコト)一个挺有趣的东西!作为一个动漫宅,游戏宅来说还是一个挺有趣的接口!banner上面就是的更多相关文章
- 一个使用openGL渲染的炫丽Android动画库二(碎片化曲面动画)
续一个使用openGL渲染的炫丽Android动画库 MagicSurfaceView v1.1.0发布, 新增碎片化曲面动画 地址:https://github.com/gplibs/android ...
- xml的序列化与反序列化求一个好用的东西,类似,newtonsoft.net转json的东西。xml里面的结构和数据库不一致..................
xml的序列化与反序列化求一个好用的东西,类似,newtonsoft.net转json的东西.xml里面的结构和数据库不一致..................
- 第一个java的小东西
第一次自己写的一个java的小东西,毕竟自己第一次写的,其中可谓是历经艰难,最后总结下来就是java实在是不适合写界面化的东西代码量比较大,这还不是最关键的,最关键的是控件的位置实在是太难控制了. 这 ...
- Google Protocol Buffer 的使用和原理(无论对存储还是数据交换,都是个挺有用的东西,有9张图做说明,十分清楚)
感觉Google Protocol Buffer无论对存储还是数据交换,都是个挺有用的东西,这里记录下,以后应该用得着.下文转自: http://www.ibm.com/developerworks/ ...
- 用C#写一个函数,在一个数组中找出随意几个值相加等于一个值 与迭代器对比
算法!用C#写一个函数,在一个数组中找出随意几个值相加等于一个值比如,数组{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20} 要找出那些数相加等 ...
- canvas游戏小试:画一个按方向键移动的圆点
canvas游戏小试:画一个按方向键移动的圆点 自己对canvas,但又有一颗做游戏的心TT.然后记录一下对canvas的学习吧,用一个按方向键控制的小圆点来做练习.(编程时用了一些es6的语法) ...
- LeetCode竞赛题:笨阶乘(我们设计了一个笨阶乘 clumsy:在整数的递减序列中,我们以一个固定顺序的操作符序列来依次替换原有的乘法操作符:乘法(*),除法(/),加法(+)和减法(-)。)
通常,正整数 n 的阶乘是所有小于或等于 n 的正整数的乘积.例如,factorial(10) = 10 * 9 * 8 * 7 * 6 * 5 * 4 * 3 * 2 * 1.相反,我们设计了一个笨 ...
- 给定一个正整数,实现一个方法求出离该整数最近的大于自身的 换位数 <把一个整数各个数位进行全排列>
"""给定一个正整数,实现一个方法求出离该整数最近的大于自身的 换位数 -> 把一个整数各个数位进行全排列""" # 使用 permu ...
- 设计一个 Java 程序,自定义异常类,从命令行(键盘)输入一个字符串,如果该字符串值为“XYZ”。。。
设计一个 Java 程序,自定义异常类,从命令行(键盘)输入一个字符串,如果该字符串值为“XYZ”,则抛出一个异常信息“This is a XYZ”,如果从命令行输入 ABC,则没有抛出异常.(只有 ...
- ZOJ 3963 Heap Partition set维护。给一个序列,将其划分成尽量少的序列,使每一个序列满足按照顺序构造二叉树,父母的值<=孩子的值。
Heap Partition Time Limit: Seconds Memory Limit: KB Special Judge A sequence S = {s1, s2, ..., sn} i ...
随机推荐
- Linux 读书笔记 二
一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 若不小心登出后,直接刷新页面即可 2. 环境使用 完成实验后可以点击桌面上方的“实验截图”保存并分 ...
- Canvas 教程
在本文章中 在你开始之前 教程内容 相关资料 A note to contributors <canvas> 是一种可以通过编写脚本(通常是JavaScript)来实现绘制图形的HTML元 ...
- 浅谈JS面向对象之创建对象
hello,everybody,今天要探讨的问题是JS面向对象,其实面向对象呢呢,一般是在大型项目上会采用,不过了解它对我们理解JS语言有很大的意义. 首先什么是面向对象编程(oop),就是用对象的思 ...
- 一款WP小游戏代码分享
首先声明游戏是H5的代码,当然游戏部分不是我写的,感谢@LeZhi的分享,关于H5我还在学习,这里只是简单介绍一下如何把一款现成的H5游戏封装成一款WP游戏(当然也可以做成Windows游戏). 大家 ...
- CSS 外边距合并
外边距合并指的是,当两个垂直外边距相遇时,它们将形成一个外边距. 合并后的外边距的高度等于两个发生合并的外边距的高度中的较大者. 外边距合并 外边距合并(叠加)是一个相当简单的概念.但是,在实践中对网 ...
- Swift与Objective-c 混编CocoaPods 引入第三方库遇到的问题 (一)
最近Swift 这么火也想尝试着用一下.考虑到Swift 出来的时间也不长.还有就是就是苹果更新的过于平凡 暂时还是不要将现有项目都用swift开发. 先来看看我遇到的问题: 问题一.
- Enum扩展及MVC中DropDownListFor扩展方法的使用
public enum SearchState { /// <summary> /// 全部 /// </summary> [Description("全部" ...
- WCF 入门(20)
前言 Happy weekend. 第20集 通过实现IErrorHandler接口来统一处理WCF里的异常 Centralized exception handling in WCF by impl ...
- oracle练习题后15个
31,32题更正: SQL> --31. 查询所有教师和同学的name.sex和birthday. SQL> select sname, ssex, sbirthday from stud ...
- hdu3613 扩展KMP
#include<stdio.h> #include<string.h> #define maxn 501000 char s[maxn],t[maxn]; int next[ ...