给blog加了个句子api
灵感来源
经常会看到一些不错的句子,每次都是扔到 Onenote 里面就完事了,最近心血来潮,就花了半个小时写了一个api
构思
后端
用的是腾讯云的无服务器云函数,虽然在阿里云有个闲置的服务器,但是没有备案,很久以前就看到过腾讯云的无服务器云函数,感觉不错,但是一直没机会用。
前端
js里面用ajax更新下就完事了。
具体实现
1.整理句子
我把句子塞到了一个json里面,然后把这个文件上传到了腾讯云COS里,文件格式大致如下
{
"我们可以卑微如尘土,但不可扭曲如蛆虫。": "季业",
"如果说,有上帝的话。人类一思考,上帝就发笑,如果人类不思考,上帝连发笑都不屑于。": "严锋",
"前进!前进!不择手段的前进!": "《三体》"
}
左边是句子,右边是来源。
2.部署云函数
云函数使用 Python3.6 ,具体代码如下
import json
import random
import requests as rq
def main_handler(event, context):
s = json.loads(rq.get("https://example.myqcloud.com/sentense.json").text)
s_l = []
for i in s:
s_l.append(i)
rand = random.randint(0,len(s_l)-1)
data = {"sentense":s_l[rand],"source":s[s_l[rand]]}
return json.dumps(data)
反正性能需求也不高,随便写了一个。
触发方式选择Api网关
,然后到Api网关里设置允许跨域访问,跨域访问好像只能用在生产环境中,所以记得发布。
3.前端相关
随便写了个js,具体代码如下
function juzi(){
var xmlhttp;
if (window.XMLHttpRequest){
xmlhttp=new XMLHttpRequest();
}
xmlhttp.onreadystatechange=function(){
if (xmlhttp.readyState==4 && xmlhttp.status==200){
j = JSON.parse(xmlhttp.responseText);
j= JSON.parse(j);
document.getElementById("juzi").innerHTML=j.sentense;
}
}
xmlhttp.open("GET","https://example.myqcloud.com/release/juzi",true);
xmlhttp.send();
}
上一篇:archlinux滚挂
下一篇:Steam下载提示清单不可用