Articles‎ > ‎

특집답변: 앱스 외부자로 부터의 파일 업로드

posted Mar 12, 2012, 10:26 AM by Sundew Shin   [ updated Mar 15, 2012, 8:19 AM ]

질문이 있는데요,

구글앱 폼에 파일을 어태치해서 받을수 있는 방법이 있나요? 아니면 다른 프로그램으로 파일을 로그인 없이 어태치해서 받을수 있는 방법이 있나요?

답변 드립니다.

아직까지 구글문서(스프레드시트)폼에서 직접 파일을 주고 받는 방법은 없습니다. 
물론, 구글문서라면 문서의 URL을 일반 텍스트입력란으로 받을 수 있겠습니다만, 이걸 원하시진 않죠.
툴들의 특성을 생각해 보면 이것은 앞으로도 계속 불가능할 것 같아요.

대안

그럼 현재로서 유일한 해결방법은 구글앱스스크립트('GAS')로 프로그램을 하나 만드는 것인데요,
다음은 그랬을때 결과물의 샘플 외형입니다:
결론적으로 위 GAS 데모프로그램 같은 것에 file upload하는 기능을 추가 시키면 원하시는 기능 구현이 가능하겠습니다. 좀더 상세한 구조는 필요하시면 말씀 드릴께요.

폼과 GAS UI의 차이

복잡해 보이지만 이것은 단순히 말해, 항상사용하시는 일반적인 폼을 GAS로 진화 시킨 것입니다. 여기에는 customize된 UI 이 외에도 많은 장점이 있습니다.

폼은 단순한 텍스트나 이것으로 대변되는 선택값만을 수집할 수 있는 반면, GAS로 구성한 입력UI는 자료수집에 있어 필요로 하는 만큼의 내부로직을 구성해 연결할 수 있어, 입력 즉시 데이터가 반영된 결과챠트를 표시하는 등, 데이터가 반영되어 결과로 보이는 업무플로우로 매끄럽게 (페이지 이동이나 refresh 없이) 연결할 수 있습니다. 이 것은 일반적인 설치형 S/W와도 차이가 없는 강력한 기능이라 하겠습니다.

외부자 파일 업로드 데모

추가로, '로그인 없이'의 의미는 구글앱스도메인 바깥의 사용자를 의미합니다.
구글문서의 폼을 떠나서 현재까지의 구글앱스는, 이런 외부자로 부터 파일과 comment를 받는 것이 차단 되어 있습니다.

앞에서 말씀 드렸듯 GAS로는 이 문제를 우회하여 구현하는 방법이 있는데 다음 실증 데모를 만들어 보았습니다:

보시면 아시겠지만, GAS로 제작된 UI를 통해, 원래는 업로드가 차단되어 있는 구글앱스도메인의 file cabinet에 누구나 파일을 추가 시킬 수 있게 되었습니다.

기억할 사항들

여기서 인식 할 점은, 외부인의 파일등록이라도 그 등록인기록은 (결국 프로그램이 파일을 올리는 것이므로) GAS 프로그램의 작성자가 된다는 것과, file cabinet이 그러하듯, 구글문서의 파일리스트에 등록물들이 올라온다는 것입니다.

이렇듯, GAS는 구글툴들이 제공하는 API를 서로 엮어 새로운 복합적인 기능을 구현할 수 있게 해 줌으로, 다소 경직되어 있다고 볼수 있는 개별툴들의 한계를 극복 할 수 있는 텃밭을 제공하고 있습니다. 그러니 앞으로의 가능성이 더욱 무궁무진하겠죠?!

이상 답변이 도움이 되었기를 바랍니다.