기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
표현식의 입력과 변수에 대한 참조
- 입력
-
$input.
input-name
.path-to-data
input-name
액션을 사용하여 생성하는 입력입니다. CreateInput예를 들어,
inputDefinition.attributes.jsonPath
항목을 정의한 데 사용할 이름이 지정된TemperatureInput
입력이 있는 경우 다음 사용 가능한 필드에 값이 나타날 수 있습니다.{ "temperature": 78.5, "date": "2018-10-03T16:09:09Z" }
temperature
필드 값을 참조하려면 다음 명령을 사용합니다.$input.TemperatureInput.temperature
값이 배열인 필드의 경우
[
을 사용하여 배열의 멤버를 참조할 수 있습니다. 예를 들어 다음과 같은 값이 있다고 가정합니다.n
]{ "temperatures": [ 78.4, 77.9, 78.8 ], "date": "2018-10-03T16:09:09Z" }
다음 명령으로 값
78.8
을 참조할 수 있습니다.$input.TemperatureInput.temperatures[2]
- Variables
-
$variable.
variable-name
은 CreateDetectorModel액션을 사용하여 정의한 변수입니다.variable-name
예를 들어
detectorDefinition.states.onInputEvents.actions.setVariable.variableName
를 사용하여 정의한 이름이 지정된TechnicianID
변수가 있는 경우 다음 명령을 사용하여 변수에 가장 최근에 지정된(문자열) 값을 참조할 수 있습니다.$variable.TechnicianID
setVariable
작업을 사용해서만 변수 값을 설정할 수 있습니다. 표현식에는 변수 값을 할당할 수 없습니다. 변수는 설정을 해제할 수 없습니다. 예를 들어 값null
을 할당할 수 없습니다.
참고
(정규 표현식) 패턴 [a-zA-Z][a-zA-Z0-9_]*
를 따르지 않는 식별자를 사용하는 참조에서는 해당 식별자를 백틱(`
)으로 묶어야 합니다. 예를 들어 필드 이름이 $input.MyInput.`_value`
로 지정된 입력에 대한 참조는 이 필드 MyInput
를 _value
로 지정해야 합니다.
표현식에서 참조를 사용하는 경우 다음을 확인하십시오.
-
하나 이상의 연산자와 함께 참조를 피연산자로 사용하는 경우, 참조하는 모든 데이터 유형이 호환되는지 확인하십시오.
예를 들어, 다음 표현식에서 정수
2
는 및 연산자==
와&&
모두의 피연산자입니다. 피연산자를 호환하기 위해서는$variable.testVariable + 1
및$variable.testVariable
이 정수 또는 10진수를 참조해야 합니다.또한 정수
1
은(는)+
연산자의 피연산자입니다. 따라서$variable.testVariable
은(는) 정수 또는 10진수를 참조해야 합니다.‘$variable.testVariable + 1 == 2 && $variable.testVariable’
-
참조를 함수에 전달된 인수로 사용하는 경우, 함수가 참조하는 데이터 유형을 지원하는지 확인하십시오.
예를 들어, 다음
timeout("
함수에는 큰따옴표가 있는 문자열이 인수로 필요합니다. 에 대한 참조를 사용하는 경우time-name
")timer-name
값은 큰따옴표가 있는 문자열을 참조해야 합니다.timeout("
timer-name
")참고
convert(
함수의 경우 참조를 사용하는 경우type
,expression
)type
값, 참조의 평가 결과는String
Decimal
, 또는 이어야 합니다Boolean
.
AWS IoT Events 표현식은 정수, 십진수, 문자열 및 부울 데이터 유형을 지원합니다. 다음 표에는 호환되지 않는 유형의 페어 목록이 나와 있습니다.
호환되지 않는 유형 페어 |
---|
정수, 문자열 |
정수, 부울 |
10진수, 문자열 |
10진수, 부울 |
문자열, 부울 |