自建网站随机名言警句API也就是一言随机名句api【教程】

自建版的好处就是,api 及经典语句内容完全由自己管控,并且稳定性受自己影响,不受外部网站影响;当然,缺点也很明显了,木有一言的语句多。

一言网(Hitokoto.cn)隶属于萌创 Team,目前网站主要提供一句话服务。动漫也好、小说也好、网络也好,不论在哪里,我们总会看到有那么一两个句子能穿透你的心。一言把这些句子汇聚起来,形成一言网络,以传递更多的感动。如果可以,他们希望没有停止服务的那一天。简单来说,一言指的就是一句话,可以是动漫中的台词,也可以是网络上的各种小段子。或是感动,或是开心,有或是单纯的回忆。

自建 API 版本

自建版的好处就是,api 及经典语句内容完全由自己管控,并且稳定性受自己影响,不受外部网站影响;当然,缺点也很明显了,木有一言的语句多。

创建 API步骤

新建一个 index.php 文件,文件内容如下:

  1. <?php
  2. /**
  3.  * Wordpress集成一言(Hitokoto)API经典语句功能
  4.  */
  5. // 获取句子文件的绝对路径
  6. // 如果你介意别人可能会拖走这个文本,可以把文件名自定义一下,或者通过Nginx禁止拉取也行。
  7. $path = dirname(__FILE__);
  8. $file = file($path.“/hitokoto.txt”);
  9. # 随机读取一行
  10. $arr  = mt_rand( 0, count$file ) – 1 );
  11. $content  = trim($file[$arr]);
  12. # 编码判断,用于输出相应的响应头部编码
  13. if (isset($_GET[‘charset’]) && !emptyempty($_GET[‘charset’])) {
  14.     $charset = $_GET[‘charset’];
  15.     if (strcasecmp($charset,“gbk”) == 0 ) {
  16.         $content = mb_convert_encoding($content,’gbk’, ‘utf-8’);
  17.     }
  18. else {
  19.     $charset = ‘utf-8’;
  20. }
  21. header(“Content-Type: text/html; charset=$charset”);
  22. # 格式化判断,输出js或纯文本
  23. if ($_GET[‘format’] === ‘js’) {
  24.     echo “function hitokoto(){document.write(‘” . $content .“‘);}”;
  25. else {
  26.     echo $content;
  27. }

然后新建一个名为 hitokoto.txt 的文本文档(在里面每行存入一句经典语句哦~),将 hitokoto.txt 文本文档与上面的 index.php 文件同时放入网站根目录下名为 hitokoto 的文件夹中,当然这里文本文档及文件夹的名称可以更改为其他任意名字,但是要将代码中对应调用部分也做更改。

现在,浏览器访问http://你的域名/hitokoto/就可以看到输出内容了,比如https://www.inqingdao.cn/hitokoto/

使用自建的 API

部署方法和上面那个基本一样:在主题代码中你需要显示语录文字的地方添加上如下代码既可以实现对 hitokoto.txt 中文字语录的调用。

  1. <script type=“text/javascript” src=“https://你的域名/hitokoto/?format=js&charset=utf-8”></script><div id=“hitokoto”><script>hitokoto()</script></div>

不过,输出的样式也和上面版本一样可能会比较丑,如果你懂 CSS 的话可以自己再美化美化。

最后,增加一点,这个时候创建好api以后,任何人都可以调用,这样你的网站不就崩了嘛,不过还好,我们可以设置访问权限,在刚开始建好的index.php文件的开头部分中,增加以下代码:

  1. header(“Access-Control-Allow-Origin: https://www.inqingdao.cn”);

上面的域名换成你自己的,这样,只有你的网站内调用才能好用,别的网址调用不行。

加完后,如图:

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
3 条回复 A 作者 M 管理员
  1. 要不要PHP环境啊?我的是500无法请求

    • 兄台啊,没有php环境能运行php文件么?

  2. 会报错

欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论