前言

想借用“一言 API” 搭建一个"毒鸡汤"的网页。
之前的API只能输出固定文本库,每个特殊分类都要单独搭建一个API,实在不方便。
这次升级实现以下功能

  • 针对不同请求输出不同文本库内容

搭建一言API

搭建过程参考:

修改上文中index.php文件,代码如下:

<?php
header("Content-type: text/html; charset=utf-8"); 

$path = dirname(__FILE__);
 
if (isset($_GET['type']) && !empty($_GET['type'])) {
    $type = $_GET['type'];
    $file = file($path."/".$type.".txt");
} else {
    $file = file($path."/hitokoto.txt");
}
 
 
$arr  = mt_rand( 0, count( $file ) - 1 );
$content  = trim($file[$arr]);

if (isset($_GET['charset']) && !empty($_GET['charset'])) {
    $charset = $_GET['charset'];
    if (strcasecmp($charset,"gbk") == 0 ) {
        $content = mb_convert_encoding($content,'gbk', 'utf-8');
    }
} else {
    $charset = 'utf-8';
}

if ($_GET['encode'] === 'js') {
    echo "function hitokoto(){document.write('" . $content ."');}";
} else {
    echo $content;
}
?>

API使用方法

请求地址为:https: //your-domain/index.php?type=jitang&encode=js

参数详解:

`type`:指定文本库文件名,无参数时默认为'hitokoto.txt'
`encode`:赋值为'js'时返回js代码,否则返回文本

示例1:

请求地址:https: //your-domain
返回hitokoto.txt文本库内随机语句。

示例2:

请求地址:https: //your-domain/index.php?type=jitang
返回jitang.txt文本库内随机语句。

示例3:

请求地址:https: //your-domain/index.php?encode=js
返回hitokoto.txt文本库内随机语句,返回形式为js代码。

示例4:

请求地址:https: //your-domain/index.php?type=jitang&encode=js
返回jitang.txt文本库内随机语句,返回形式为js代码。

注意:

需要把代码中的https://your-domain地址替换为自己"一言 API"的地址

打包

一言2.0打包,解压缩直接食用。
包含了默认读取的hitokoto.txt文本文件。