함수 구성 파일
app/ └── functions/ ├── config.json └── <function>.js
함수 매니페스트
앱의 모든 함수 에는 함수 매니페스트 파일에 해당 메타데이터 항목이 있습니다: /functions/config.json
.
팁
Atlas App Services는 아직 구성이 정의되지 않은 경우 가져올 때 매니페스트에 함수를 자동으로 추가합니다. 기본 설정을 사용하는 경우 함수에 대한 구성 정의를 건너뛰고 App Services에서 자동으로 수행하도록 할 수 있습니다. 매니페스트에는 다음에 앱을 내보내거나 가져올 때 생성된 구성이 포함됩니다.
[ { "name": "<Function Name>", "private": <Boolean>, "can_evaluate": { <JSON Expression> }, "disable_arg_logs": <Boolean>, "run_as_system": <Boolean>, "run_as_user_id": "<App Services User ID>", "run_as_user_id_script_source": "<Function Source Code>" }, ... ]
필드 | 설명 |
---|---|
name string | 함수의 이름입니다. 이름은 소스 코드 파일 의 파일 이름과 일치해야 하며 애플리케이션 의 모든 기능 간에 고유해야 합니다. |
private boolean |
|
can_evaluate object | 함수 실행이 허용된 경우 |
disable_arg_logs boolean |
|
run_as_system boolean |
|
run_as_user_id string | 함수가 항상 실행되는 App Services 사용자 의 고유 ID입니다. |
run_as_user_id_script_source string | 함수가 호출될 때마다 실행되고 함수가 실행되는 App Services 사용자 의 고유 ID를 반환하는 문자열화된 함수 입니다. |
함수 소스 코드
함수 이름을 파일 이름으로 사용하는 /functions
디렉토리 내의 .js
파일에 함수의 소스 코드를 정의합니다. 각 파일은 요청이 함수를 호출할 때마다 실행되는 메인 함수를 내보내야 합니다.
중요
모든 함수 소스 코드 파일은 /functions
디렉토리에 있어야 합니다.
exports = function addOne(input) { if(typeof input !== "number") { throw new Error("You must call addOne() with a number"); } return input + 1; };