依文件的描述撰写 API,实作时如果发现有实作的问题,再反馈讨论修正。
今日要点:
》制作 API 规格文件
》实作 Demo 用的 API
前篇我们把文件写好了, 那今天就来实作它。
【Day 7】我们撰写了「查询Gamil资讯」API 文件,就可以依文件的描述撰写 API,实作时如果发现有实作的问题,再反馈讨论修正。
这里需要写一个API来回应前端的请求,我们可以依【Day 6】介绍的触发器实作 doGet(e) 来接收请求并且回应资讯。
接收前端的请求
function doGet(e) {
var param;
var name = '路人甲';
var func = 'getGmailInfo';
var content;
if(e){
param = e.parameter;
name = param.name;
func = param.func;
}
if(func == "getGmailInfo"){
content = getJsonGmailInfo(name);
}else{
content = {'error':'无此 function '}
}
return ContentService.createTextOutput(JSON.stringify(content) )
.setMimeType(ContentService.MimeType.JSON);
}
组合「查询Gamil资讯」要回应的JSON资讯
function getJsonGmailInfo(name){
var json = {
'hello': name +' 您好!',
'unreadCount': GmailApp.getInboxUnreadCount(),
'spamCount': GmailApp.getSpamUnreadCount() ,
'messageSubject': getJsonGmailMessageSubject()
};
return json;
}
取得收件夹中最新的5封的信件标题
function getJsonGmailMessageSubject()
{
//取得最近1到5的信件
var mail = GmailApp.getInboxThreads(0, 5);
var tempPrdList=[];
for(var i in mail){
tempPrdList.push(mail[i].getFirstMessageSubject());
}
return tempPrdList;
}
以上就完成了 API 程序的撰写,这里用到的 Gmail API 都很直觉所以没加什麽注解,未来有机会实作到其他的 Gmail API 再继续补充 ^_^。
<<: 【第九天 - Flutter Bloc+Cubit 架构教学】
今天来聊一聊 怎麽挑选作品集的主题 老实说主题我其实想蛮久的, 想得出来的不一定做得到, 做得出来又...
简介 今天我想要介绍一下关於C++的一些基本文法,还有一些我学到的写程序时须注意的小撇步。做为一个初...
接下来我们来看看在SwiftUI 怎麽使用WebView 网页的元件,SwiftUI 框架 有一个缺...
-什麽是风险? ISO/IEC/IEEE 24765:2017 系统和软件工程 — 词汇 风险给个...
在通讯录或朋友列表里,我们可以搜寻一个名字,就找到电话或页面,只需要O(1)。如果想要实现这样的操作...