Javascript 如何自动化Ajax请求
我有一个Ajax脚本,它接收JSON数据并将其转换为CSV文件,当您运行脚本时,浏览器会要求您下载该文件: 我想改进我的脚本,使其自动运行(如每小时),以便每小时生成一个包含更新数据的csv文件 我对编程非常陌生,我不知道如何进行,你们知道我可以使用什么工具、框架和语言来实现这个目的吗 这是我的剧本:Javascript 如何自动化Ajax请求,javascript,jquery,ajax,file,csv,Javascript,Jquery,Ajax,File,Csv,我有一个Ajax脚本,它接收JSON数据并将其转换为CSV文件,当您运行脚本时,浏览器会要求您下载该文件: 我想改进我的脚本,使其自动运行(如每小时),以便每小时生成一个包含更新数据的csv文件 我对编程非常陌生,我不知道如何进行,你们知道我可以使用什么工具、框架和语言来实现这个目的吗 这是我的剧本: <!DOCTYPE html> <meta charset="utf-8"/> <html> <head> <tit
<!DOCTYPE html>
<meta charset="utf-8"/>
<html>
<head>
<title>This is Website Title</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js" type="text/javascript"></script>
<script src="../FileSaver.js"></script>
<script>
var formId = 566091
// Définition des paramètres de la requête HTTP
var settings = {
"async": true,
"crossDomain": true,
"url": "https://www.kizeoforms.com/rest/v3/forms/"+formId+"/data/readnew",
"method": "GET",
"headers": {
"content-type": "application/json",
"Authorization": "*******",
}
}
// Envoi de la requête et affichage en console de la réponse
$.ajax(settings).done(function (response) {
console.log(response);
var ronde1n = [];
//on définit data qu'on va devoir parcourir avec un forEach
const data = response.data;
//on envoie les headers du fichiers csv
ronde1n.push("Numéro d'enregistrement,ID,Date et heure,conso SSA3");
//on parcours l'ensemble des enregistrements du formulaire Ronde 1 nuit
data.forEach(function (i) {
//on envoie les valeurs des champs qui nous intéressent pour chaque enregistrement
ronde1n.push("\r\n" + i.record_number + "," + i.id + "," + i.fields.date_et_heure.value + "," + i.fields.ssa_3_a_22h00.value);
});
//création du fichier CSV
var blob = new Blob([ronde1n], {type: "application/csv;charset=utf-8"});
saveAs(blob, "ronde1_nuit.csv");
});
</script>
</head>
</html>
这是网站名称
变量formId=566091
//需求参数的定义
变量设置={
“异步”:true,
“跨域”:正确,
“url”:”https://www.kizeoforms.com/rest/v3/forms/“+formId+”/data/readnew”,
“方法”:“获取”,
“标题”:{
“内容类型”:“应用程序/json”,
“授权”:“*******”,
}
}
//请求和确认请求的环境
$.ajax(设置).done(函数(响应){
控制台日志(响应);
var ronde1n=[];
//关于devoir parcourir avec un forEach的有限数据
const data=response.data;
//关于费希尔的环境
ronde1n.push(“注册号、身份证、日期和时间、联合国”);
//关于1号努伊特公式乐团
data.forEach(函数(i){
//关于注册会计师资格证书
ronde1n.push(“\r\n”+i.record\u number+”、“+i.id+”、“+i.fields.date\u et\u heure.value+”、“+i.fields.ssa\u 3\u a\u 22h00.value”);
});
//费希尔公寓
var blob=new blob([ronde1n],{type:“application/csv;charset=utf-8”});
saveAs(blob,“ronde1_nuit.csv”);
});
只有在用户保持浏览器窗口打开的情况下,在浏览器内部才能执行类似操作。请每隔一段时间打开一次。TKoL,您可以使用浏览器以外的其他工具运行此类脚本吗?或者将浏览器作为后台进程运行?Chrillewoodz,是的,但问题是我希望文件自动生成,而无需询问用户,最终我希望脚本作为后台进程运行,而不是每次打开浏览器