您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
今日诗词API 是一个可以免费调用的诗词接口
此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.greasyfork.icu/scripts/460899/1156452/%E4%BB%8A%E6%97%A5%E8%AF%97%E8%AF%8DV2%20JS-SDK.js
// ==UserScript== // @name 今日诗词V2 JS-SDK // @version 1.2.2 // @description 今日诗词API 是一个可以免费调用的诗词接口 // @author lakeside // @license GNU GPLv3 // @run-at document-end // ==/UserScript== !(function (e) { var n, t = {}, o = "jinrishici-token"; function i() { return ( document.getElementById("jinrishici-sentence") || 0 != document.getElementsByClassName("jinrishici-sentence").length ); } function c() { t.load(function (e) { var n = document.getElementById("jinrishici-sentence"), t = document.getElementsByClassName("jinrishici-sentence"); if ((n && (n.innerText = e.data.content), 0 !== t.length)) for (var o = 0; o < t.length; o++) t[o].innerText = e.data.content; }); } function r(e, n) { var t = new XMLHttpRequest(); t.open("get", n), (t.withCredentials = !0), t.send(), (t.onreadystatechange = function (n) { if (4 === t.readyState) { var o = JSON.parse(t.responseText); "success" === o.status ? e(o) : console.error( "今日诗词API加载失败,错误原因:" + o.errMessage ); } }); } (t.load = function (n) { return e.localStorage && e.localStorage.getItem(o) ? (function (e, n) { return r( e, "https://v2.jinrishici.com/one.json?client=browser-sdk/1.2&X-User-Token=" + encodeURIComponent(n) ); })(n, e.localStorage.getItem(o)) : (function (n) { return r(function (t) { e.localStorage.setItem(o, t.token), n(t); }, "https://v2.jinrishici.com/one.json?client=browser-sdk/1.2"); })(n); }), (e.jinrishici = t), i() ? c() : ((n = function () { i() && c(); }), "loading" != document.readyState ? n() : document.addEventListener ? document.addEventListener("DOMContentLoaded", n) : document.attachEvent("onreadystatechange", function () { "complete" == document.readyState && n(); })); })(window);