웹 앱

스크립트의 사용자 인터페이스를 빌드하는 경우 스크립트를 있습니다. 예를 들어 사용자가 지원팀의 구성원은 웹 앱으로서 제공되는 것이 가장 좋으며 사용자는 브라우저에서 직접 액세스할 수 있습니다.

독립형 스크립트애플리케이션에 바인딩된 Google Workspace 스크립트 변환될 수 있습니다 단, 아래의 요건을 충족해야 합니다.

웹 앱 요구사항

다음 요구사항을 충족하면 스크립트를 웹 앱으로 게시할 수 있습니다.

요청 매개변수

사용자가 앱을 방문하거나 프로그램이 앱에 HTTP GET 요청을 보내면 Apps Script에서 doGet(e) 함수를 실행합니다. 프로그램이 앱에 HTTP를 전송할 때 POST 요청 시 Apps Script에서 대신 doPost(e)를 실행합니다. 두 경우 모두 e 인수는 이벤트에 대한 정보를 포함할 수 있는 이벤트 매개변수를 나타냅니다. 요청 매개변수를 사용할 수 있습니다. 이벤트 객체의 구조는 표에 나와 있습니다. 아래:

필드
e.queryString

URL에서 쿼리 문자열 부분의 값 또는 쿼리 문자열이 지정되지 않은 경우 null

name=alice&n=1&n=2
e.parameter

요청 매개변수에 해당하는 키-값 쌍의 객체입니다. 여러 값을 가진 매개변수의 경우 첫 번째 값만 반환됩니다.

{"name": "alice", "n": "1"}
e.parameters

e.parameter와 비슷하지만 키마다 값 배열이 있는 객체입니다.

{"name": ["alice"], "n": ["1", "2"]}
e.pathInfo

/exec 또는 /dev 뒤의 URL 경로입니다. 예를 들어 URL 경로가 /exec/hello로 끝나면 경로 정보는 hello입니다.

e.contextPath 사용되지 않으며 항상 빈 문자열입니다.
e.contentLength

POST 요청의 경우 요청 본문의 길이 또는 GET 요청의 경우 -1

332
e.postData.length

e.contentLength와 동일

332
e.postData.type

POST 본문의 MIME 유형입니다.

text/csv
e.postData.contents

POST 본문의 콘텐츠 텍스트

Alice,21
e.postData.name

항상 'postData' 값

postData

예를 들어 usernameage과 같은 매개변수를 전달할 수 있습니다. 을 URL에 추가합니다.

https://script.google.com/.../exec?username=jsmith&age=21

그러면 다음과 같이 매개변수를 표시할 수 있습니다.

function doGet(e) {
  var params = JSON.stringify(e);
  return ContentService.createTextOutput(params).setMimeType(ContentService.MimeType.JSON);
}

위의 예에서 doGet(e)는 다음과 같은 출력을 반환합니다.

{
  "queryString": "username=jsmith&age=21",
  "parameter": {
    "username": "jsmith",
    "age": "21"
  },
  "contextPath": "",
  "parameters": {
    "username": [
      "jsmith"
    ],
    "age": [
      "21"
    ]
  },
  "contentLength": -1
}

스크립트를 웹 앱으로 배포

스크립트를 웹 앱으로 배포하려면 다음 단계를 따르세요.

  1. 스크립트 프로젝트의 오른쪽 상단에서 배포를 클릭합니다. 새 배포.
  2. '유형 선택' 옆의 '배포 유형 사용 설정'을 클릭합니다. > 웹 앱.
  3. '배포' 아래의 필드에 웹 앱에 대한 정보를 입력합니다. 확인할 수 있습니다.
  4. 배포를 클릭합니다.

앱을 사용하려는 사용자와 웹 앱 URL을 공유할 수 있습니다. 이 경우 해당 사용자에게 액세스 권한을 부여해야 합니다.

웹 앱 배포 테스트

스크립트를 웹 앱으로 테스트하려면 다음 단계를 따르세요.

  1. 스크립트 프로젝트의 오른쪽 상단에서 배포 > 테스트 배포를 참조하세요.
  2. '유형 선택' 옆의 '배포 유형 사용 설정'을 클릭합니다. > 웹 앱.
  3. 웹 앱 URL에서 복사를 클릭합니다.
  4. 브라우저에 URL을 붙여넣고 웹 앱을 테스트합니다.

    URL이 /dev(으)로 끝나며 수정 액세스 권한이 있는 사용자만 액세스할 수 있습니다. 추가할 수 있습니다. 이 앱 인스턴스는 항상 가장 최근에 저장된 개발 중 테스트용으로만 사용됩니다.

권한

웹 앱의 권한은 실행 방법에 따라 다릅니다 앱:

  • 나로 앱 실행: 이 경우 스크립트는 항상 실행됩니다. 스크립트의 소유자인 여러분으로 간주됩니다.
  • 웹 앱에 액세스하는 사용자로 앱 실행 - 이 경우 스크립트는 웹 앱을 사용하는 활성 사용자의 ID로 실행됩니다. 이 권한 사용자가 스크립트를 실행할 때 웹 앱이 스크립트 소유자의 이메일을 표시하도록 액세스를 승인합니다.

Google 사이트 도구에 웹 앱 삽입

Google Sites에 웹 앱을 삽입하려면 먼저 배포됩니다. 또한 Deploy 대화상자의 배포된 URL이 필요합니다.

사이트 도구에 웹 앱을 삽입하려면 다음 단계를 따르세요. 다음 단계를 따르세요.

  1. 웹 앱을 추가할 사이트 페이지를 엽니다.
  2. 삽입 > 삽입 URL을 선택합니다.
  3. 웹 앱 URL을 붙여넣은 다음 추가를 클릭합니다.

웹 앱이 페이지 미리보기의 프레임에 표시됩니다. 게시 시점 사이트 뷰어가 웹 앱을 승인해야 정상적으로 실행됩니다 승인되지 않은 웹 앱이 있습니다.

웹 앱 및 브라우저 기록

Apps Script 웹 앱에서 여러 페이지를 시뮬레이션하도록 하는 것이 바람직할 수 있습니다. URL 매개변수를 통해 제어되는 동적 UI가 있는 애플리케이션 등이 있습니다. 이 작업을 잘 수행하려면 앱의 상태를 나타내는 상태를 나타내는 상태를 브라우저 기록에 푸시할 때 파악할 수 있습니다. 또한 기록 이벤트를 수신하여 사용자가 브라우저 버튼 로드 시 URL 매개변수를 쿼리하면 앱은 이러한 매개변수를 기반으로 UI를 동적으로 빌드하므로, 사용자는 이를 통해 특정 상태에서 앱을 시작할 수 있습니다.

Apps Script는 두 개의 비동기 클라이언트 측 JavaScript API를 제공하여 다음과 같은 방법으로 웹 앱을 만들 수 있습니다.

  • google.script.history 는 브라우저 기록 변경에 동적 응답을 허용하는 메서드를 제공합니다. 이 포함: 브라우저로 상태 (정의할 수 있는 간단한 객체) 푸시 기록 스택의 최상위 상태 교체, 리스너 설정 콜백 함수를 사용하여 기록 변경에 응답할 수 있습니다.

  • google.script.url에서는 다음을 제공합니다. 현재 페이지의 URL 매개변수와 URL 프래그먼트를 검색하는 수단입니다. 존재한다는 것입니다.

이 기록 API는 웹 앱에서만 사용할 수 있습니다. 그렇지 않습니다. 사이드바, 대화상자 또는 부가기능에 지원됩니다 이 기능은 다음 용도로 사용하지 않는 것이 좋습니다. Google 사이트 도구에 삽입된 웹 앱