返回错误400请求失败的应用程序脚本



我有这个代码,我用它从电子表格创建PDF,我修改了它,在另一个电子表格中使用,现在我收到了这个错误。

异常:的请求失败https://docs.google.com返回代码400。截断的服务器响应:<元名称=";视口";c.…(使用muteHttpExceptions选项检查完整响应(

完整的错误似乎是:

找不到页面/*版权所有2022 Google股份有限公司保留所有权利*/.goog内联块{位置:相对;显示:-moz内联框;显示:内联块}*html.goog inline块{显示:内联}*:第一个子+html.googinline块{显示:inline}#驱动器徽标{边距:18px 0;位置:绝对;空白:nowrap}.docs驱动器徽标img{背景图像:url('//ssl.gstatic.com/images/branding/googlelogo/1x/googlelogo _color_116x41dp.png'(;背景大小:116px 41px;显示:内联块;高度:41px;垂直对齐:底部;width:116px}.docs驱动器徽标文本{color:#000;显示:内联块;不透明度:0.54;文本装饰:无;字体系列:'ProductSans',Arial,Helvetica,Sans-serif;字体大小:32px;文本渲染:optimizeLegibility;位置:相对;顶部:-6px;左侧:-7px;-webkit字体平滑:抗锯齿;-moz-osx字体平滑:灰度}@media(-webkit最小设备像素比:1.5(,(最小分辨率:144dpi({.docs drivelogo img{background image:url('//ssl.gstatic.com/images/branding/googlelogo/2x/googlelogo _color_116x41dp.png'(}}主体{背景色:#fff;font-family:Arial,sans-serif;font-size:13px;margin:0;padding:0;}a,a:链接,a:已访问{color:#112ABB;}.errorMessage{font-size:12pt;font-weight:bold;line-height:150%;}抱歉,此时无法打开文件。

请检查地址,然后重试。

使用Google Drive完成任务

Google Drive中的应用程序可以轻松创建、存储和共享在线文档、电子表格、演示文稿等。

请访问drive.google.com/start/apps.了解更多信息

html{height:100%;溢出:auto;}body{height:100%;溢出:自动;}#outerContainer{margin:auto;最大宽度:750px;}#内部容器{margin bottom:20px;margin left:40px;margin right:40px,margin top:80px;position:relative;}

有什么方法可以解决这个错误吗?这是脚本:

var ss2 = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/1cEFEmTuVisjOvOpN1JieOOIvJloYcgFHQmD5a07lnCo/edit#gid=1149589669');   
var sheetName = ss2.getSheetByName('Exportación_pdf');
var sheetName2 = ss2.getSheetByName('Selección pedido');
var folderID = "14QBHZ5268OI9cqurbcIuvDfa3GG6HUVa"; // Folder id to save in a folder.
var num_rows = sheetName.getRange("AR1").getValue();
var folder = DriveApp.getFolderById(folderID); 
var pdfName = ss2.getSheetByName('Exportación_pdf').getRange('F1:F3').getValue() + "_" + ss2.getSheetByName('Exportación_pdf').getRange('AK5').getValue() + "_" + ss2.getSheetByName('Selección pedido').getRange('Q4').getValue(); // Nombre del documento
var bogus = DriveApp.getRootFolder();
SpreadsheetApp.getActiveSpreadsheet().toast('Creando PDF');
// export url
var url = 'https://docs.google.com/spreadsheets/d/'+ss2.getId()+'/export?exportFormat=pdf&format=pdf' // export as pdf / csv / xls / xlsx
+ '&range=Exportacion_pdf!AJ1:AQ'+num_rows
+ '&size=A4'                           // paper size legal / letter / A4
+ '&portrait=false'                     // orientation, false for landscape
+ '&fitw=true'                        // fit to page width, false for actual size
+ '&sheetnames=false&printtitle=false' // hide optional headers and footers
+ '&pagenumbers=true&gridlines=false' // hide page numbers and gridlines
+ '&fzr=true'                         // do not repeat row headers (frozen rows) on each page
+ '&top_margin=0.5&bottom_margin=0.5&left_margin=0.5&right_margin=0.5'
+ '&gid='+ss2.getSheetId();    // the sheet's Id
var token = ScriptApp.getOAuthToken();
var response = UrlFetchApp.fetch(url, {muteHttpExceptions: true,
headers: {
'Authorization': 'Bearer ' +  token
}
});
var theBlob = response.getBlob().setName(pdfName+'.pdf');
// delete pdf if already exists
var files = folder.getFilesByName(pdfName);
while (files.hasNext())
{
files.next().setTrashed(true);
}
// create pdf
var newFile = folder.createFile(theBlob);
return true;
}```
Thank you so much in advance!

更改此项:

var url = 'https://docs.google.com/spreadsheets/d/'+sheetName+'/export?exportFormat=pdf&format=pdf'

对此:

var url = 'https://docs.google.com/spreadsheets/d/'+ss2.getId()+'/export?exportFormat=pdf&format=pdf'

似乎您没有将Google Sheetid添加到URL中。

相关内容

最新更新