我在这里看了答案:How do I stop the error, Authorisation is required to perform that action in Google Script。这并不能解决我的问题,因为我没有更改任何代码,并且我第一次运行它时已经授权了代码。我突然收到Authorization is required to perform that action
错误。
我还尝试了此链接https://developers.google.com/apps-script/troubleshooting#common_errors并在编辑器function test() { var a=1}
中运行了一个空白函数。这运行正常,没有给我提示授权脚本,没有错误。因此,在按照Google的说明操作后:To authorize the script, open the Script Editor and run any function.
我仍然收到Authorization is required to perform that action
错误。
我没有做任何花哨的事。该脚本只有一个.gs
文件,该文件只有一个函数。我没有使用任何高级服务,我也没有将它链接到任何库。
更新:我试图复制该文件,然后再次进入脚本编辑器运行代码。这次授权pop就在那里,所以我点击继续。以下显示:代码想要
View and manage the files in your Google Drive.
Send email as you
Connect to an external service
我点击“接受”。代码开始运行,2秒后Authorization is required to perform that action.
现在,每当我尝试运行代码时,它甚至都不会给我授权弹出窗口。它只是给了我错误。
这是代码的oauth部分。剩下的代码只是更多的代码。
var oauthConfig = UrlFetchApp.addOAuthService("google");
var scope = "https://docs.google.com/feeds/";
//make OAuth connection
oauthConfig.setAccessTokenUrl("https://www.google.com/accounts/OAuthGetAccessToken");
oauthConfig.setRequestTokenUrl("https://www.google.com/accounts/OAuthGetRequestToken?scope="+scope);
oauthConfig.setAuthorizationUrl("https://www.google.com/accounts/OAuthAuthorizeToken");
oauthConfig.setConsumerKey("anonymous");
oauthConfig.setConsumerSecret("anonymous");
//get request
var request = {
"method": "GET",
"oAuthServiceName": "google",
"oAuthUseToken": "always",
"muteHttpExceptions": true
};
答案 0 :(得分:1)
编辑: 从评论中看起来您希望将电子表格保存为驱动器中的pdf。这是一段可以做到这一点的代码。
var ss = SpreadsheetApp.openById(fileId);
var blob = ss.getBlob().setName("new_file_name.pdf");
DriveApp.createFile(blob);