홈>
안녕하세요. 드라이브에서 더 아름답고 검색 가능한 파일 목록을 만들려고 방황하고 있습니다.
나는
fileVar.getDownloadUrl()
를 만든다
그러나 HTML로 인쇄하면 링크가 없습니다.
Logger.log ()로 확인했는데 URL이 기록되지 않습니다.
getUrl ()이 작동합니다. 구매도 필요합니다.
¿ 일부 아이디어?
코드 .gs
function getRecFol(folId){
var l = [];
var fol = DriveApp.getFolderById(folId);
var arch = fol.getFiles();
while (arch.hasNext()){
var a = arch.next();
//Logger.log(a.getId());
l.push(a.getId());
}// fin primera parte
//segunda parte.
//Logger.log(resultado);
var fols = fol.getFolders();
var l2 = [];
while (fols.hasNext()){
var a = fols.next();
//Logger.log('folder:');
//Logger.log(a);
var b = getRecFol(a.getId());
for (var i = 0;i < b.length;i++){
l2.push(b[i]);
}
}
for (var i = 0;i < l2.length;i++){
l.push(l2[i]);
}
// Logger.log(resultado !=[]);
return l;
}
/* TIPO PARA EL OBJETO CON LA INFORMACION PARA EL HTML */
function listedFile(id,title,tipe,description,fold,update,vision,descarga){
this.id = id;
this.title = title;
this.tipe = tipe;
this.description = description;
this.fold = fold;
this.update = update;
this.descarga = descarga;
this.vision = vision;
}
function getData(){
var listaF = getRecFol('IdFolder');
var listaO = [];
for (var i = 0; i < listaF.length ;i++){
var f = DriveApp.getFileById(listaF[i]);
f.getDownloadUrl();
var o = new listedFile(listaF[i],f.getName(),f.getMimeType(),f.getDescription(),f.getParents(),f.getLastUpdated(),f.getUrl(),f.getDownloadUrl());
Logger.log(o.description);
listaO.push(o);
}
return listaO;
}
function doGet(){
return HtmlService
.createTemplateFromFile('index')
.evaluate();
};
html
<html>
<body>
Hello, world!
<ol>
<? var lista = getData();
for (var i = 0; i < lista.length; i++){ ?>
<li>
<a href="<?= lista[i].descarga ?>"><?= lista[i].title ?></a> - <a href="<?= lista[i].vision ?>"> VER </a>
</li>
<ul>
<li><?= lista[i].description ?></li>
</ul>
<? } ?>
</ol>
</body>
</html>
- 답변 # 1
- 답변 # 2
귀하의 정보 :는"pdf로 다운로드"링크를 만드는 방법. 이것을 사용하십시오 :
https://docs.google.com/feeds/download/documents/export/Export?id=*documentId*&exportFormat=pdf
복잡하지만 작동합니다.
관련 자료
- php - txt 파일의 내용을 배열로 가져 오는 방법
- c# - mp4 파일에서 파일 등급을 읽는 방법은 무엇입니까?
- ios - 신속하게 응답 JSON을 얻는 방법
- c# - INamedTypeSymbol에서 형식 제약 목록을 가져 오는 방법
- sql - 신분증의 최신 2 개 기록을 얻는 방법
- c++ - C ++ 20 std lib를 어떻게 구할 수 있습니까?
- javascript - PHP의 에코에서 responseText를 얻는 방법
- python - ttk의 스핀 박스에서 값을 가져 오는 방법은 무엇입니까?
- winforms - 이미지에서 빨간색 구성 요소를 가져 오는 방법 C #
- django - 셀러리 - shared_task에 대한 작업 id를 얻는 방법은 무엇입니까?
- performance - 주요 지표를 얻는 방법?
- python - 다른 형식으로 목록을 얻으려면 어떻게합니까?
- 집 폭탄의 총 크기를 얻는 방법은 무엇입니까?
- c# - linq - 객체의 가치를 얻는 방법
- mysql - 값의 하위 합계를 어떻게 얻을 수 있습니까?
- python 3.x - 쿼리에서 열 이름을 얻는 방법은 무엇입니까?
- Flutter에서 파일의 base64를 얻는 방법
- python - 행 간의 차이를 얻는 방법
- Java로 json 데이터에서 csv 파일을 생성하는 방법은 무엇입니까?
- php - 다음 어레이를 어떻게 구할 수 있습니까?
관련 질문
- Google Apps Script : 폴더에 폴더 추가
- 스프레드 시트의 Google 드라이브 폴더에있는 파일 나열
- 앱 스크립트를 사용하여 파일을 Google 드라이브 폴더로 다운로드
- XLSX를 Google 스프레드 시트로 변환하고 변환 된 파일을 이동하는 스크립트
- web applications - Google API를 사용하여 Google 스프레드 시트를 웹앱으로 배포하는 방법
- Google 스크립트 시간 초과
- Google 스크립트를 사용하여 Google 슬라이드에 Google 드라이브 비디오 삽입
- google drive api - 웹 앱의 태그에 사용 된 이미지를 "회사 내의 모든 사람"으로 제한하는 방법은 무엇입니까?
- 비밀번호로 보호 된 Excel을 여는 Google Apps Script?
- google 스프레드 시트 - 파일의 모든 id 가져 오기
코드를 테스트 한 결과 몇 가지 문제가 있었지만 마침내 작동하게되었습니다 ...
getDownloadUrl()
인 것 같습니다 실제로 다운로드 할 수있는 파일 (예 : Google 문서, 스프레드 시트는 아니지만 "일반 파일"(단어를 사용하는 경우))의 파일 만 jpg, pdf, doc 등으로 반환합니다.문서에서 언급을 찾지 못했지만 검색이 잘되지 않았을 수 있습니다.
어쨌든, 여기 테스트에 사용한 간단한 코드 버전이 있습니다. 여기서 검사하는 폴더에는 3 개의 Google 문서 파일과 jpg 이미지가 포함되어 있으며 이미지 파일에 대해서만 downloadUrl을 얻습니다.
(
index.html
그리고doGet()
변경되지 않음)정보를 위해, 여기에 첫 번째 항목 만이 downloadUrl에 대한 값을 가지고 있음을 알 수있는 결과 로그 (약간 읽기 어렵지만 동의합니다 ^^)가 있습니다.