Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script 通过'访问XMLHttpRequest;https://script.google.com/macros/ -已被CORS策略阻止_Google Apps Script_Google Sheets_Xmlhttprequest_Cors - Fatal编程技术网

Google apps script 通过'访问XMLHttpRequest;https://script.google.com/macros/ -已被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";

我有一个电子表格,我创建了script.google.com代码作为web API,将电子表格数据导出为json,但当编写代码读取json时,“出现问题”已被CORS策略阻止

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)
  
}