Google apps script 通过'访问XMLHttpRequest;https://script.google.com/macros/ -已被CORS策略阻止
我有一个电子表格,我创建了script.google.com代码作为web API,将电子表格数据导出为json,但当编写代码读取json时,“出现问题”已被CORS策略阻止Google apps script 通过'访问XMLHttpRequest;https://script.google.com/macros/ -已被CORS策略阻止,google-apps-script,google-sheets,xmlhttprequest,cors,Google Apps Script,Google Sheets,Xmlhttprequest,Cors,我有一个电子表格,我创建了script.google.com代码作为web API,将电子表格数据导出为json,但当编写代码读取json时,“出现问题”已被CORS策略阻止 var dataJSON; function viewVillages(){ var xmlhttp = new XMLHttpRequest(); var url = "script.google.com";
var dataJSON;
function viewVillages(){
var xmlhttp = new XMLHttpRequest();
var url = "script.google.com";
xmlhttp.onreadystatechange = function() {
if (this.readyState == 1 ) {
console.log("1");
}
if (this.readyState == 2 ) {
console.log("2");
}
if (this.readyState == 3 ) {
console.log("3");
}
if (this.readyState == 4 && this.status == 200) {
console.log("4");
var myArr = JSON.parse(this.responseText);
myFunction(myArr);
}
};
xmlhttp.open("GET", url, true);
xmlhttp.send();
function myFunction(arr) {
dataJSON=arr;
}
}
发布web应用程序API的代码
我将此发布为web应用程序API,任何人都可以访问此应用程序,
此链接用于查看结果
函数doGet(e){
var ss=电子表格应用程序.openByUrl(“url”);
var sheetgoogle=ss.getSheetByName(“实验室”);
返回getUsers(谷歌);
}
函数getUsers(谷歌){
var ps={};
var dataArrayGoogle=[];
var rowsGoogle=sheet.getRange(2,1,sheetgoogle.getLastRow()-1,sheetgoogle.getLastColumn()).getValues();
对于(var i=0,l=rowsGoogle.length;i发布为任何人,甚至是匿名的
?显示您的doGet()
和doPost())
您的问题以显示代码以及您的web应用程序是如何发布的。请查看和@TheMaster I edited my question,请帮助我,谢谢1。当您访问web应用程序api时,它是否记录在谷歌应用程序脚本日志中?脚本编辑器>查看>执行>清除以我的身份运行过滤器位于顶部2。要确认,您以任何人的身份发布de>即使是匿名的
**?3.发布的链接应该是script.google.com..你从哪里得到script.googleusercontent.com?请在下面的答案框中添加答案。请参阅
function doGet(e){
var ss = SpreadsheetApp.openByUrl("url");
var sheetgoogle = ss.getSheetByName("labs");
return getUsers(sheetgoogle);
}
function getUsers(sheetgoogle){
var ps = {};
var dataArrayGoogle = [];
var rowsGoogle = sheet.getRange(2,1,sheetgoogle.getLastRow()-1, sheetgoogle.getLastColumn()).getValues();
for(var i = 0, l= rowsGoogle.length; i<l ; i++){
var dataRowGoogle = rowsGoogle[i];
var recordSheet={} ;
recordSheet[0] = dataRowGoogle[0];
recordSheet[1] = dataRowGoogle[1];
dataArrayGoole.push(recordSheet);
}
ps.user = dataArrayGoogle;
var result = JSON.stringify(ps);
return ContentService.createTextOutput(result).setMimeType(ContentService.MimeType.JSON)
}