我创建了一个 Google Web 脚本应用程序,它将用户的姓名和电子邮件添加到电子表格中。当直接在浏览器中访问网页时,这工作正常,但来自网站的 GET 和 POST 请求都返回错误“访问以获取在 ' https://script.google.com/macros/s/AKfycbxkG5hM6MMswwHdzWSJKwutMYsOZRT3zjC7jFti0sDvJ47bWBEVEV4BEV4 ’ from origin '' has been Blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the request resource. 如果不透明响应满足您的需求,请将请求的模式设置为 'no-cors' 以获取禁用 CORS 的资源。”
我不一定需要来自 POST 请求的响应,但使用“no-cors”实际上并没有更新电子表格(我进行了测试以确保它在网站之外工作)
我使用了 XMLHttpRequest 和 fetch 方法,同时使用了 GET 和 POST 请求,并更改了各种设置以尝试使其工作,但到目前为止还没有运气。
我尝试修改 Google Apps 脚本项目(设置为以我的身份执行,任何人都可以匿名访问)和清单(此处不多,文档参考)中的设置。
我查看了这些堆栈溢出帖子试图提供帮助,但他们的解决方案对我不起作用(任何都不完全适用于我的情况)
这是我的获取方法(最近的尝试)
fetch("https://script.google.com/macros/s/AKfycbxkG5hM6MMswwHdzWSJKwutMYsOZRT3zjC7jFti0sDvJ47bWB4BTsHPhvbyEVGSsSc5/exec", {
method: 'POST',
data: data,
mode: 'cors',
credentials: 'include', // include, *same-origin, omit
redirect: 'follow', …Run Code Online (Sandbox Code Playgroud)