RESTResponseV2 - 범위가 지정됨, 전역
RESTResponseV2 API는 JavaScript 코드에서 아웃바운드 REST 메시지로 리턴된 데이터를 사용할 수 있는 메소드를 제공합니다.
RESTResponseV2 객체는 RESTMessageV2 메소드 execute() 및 executeAsync()에 의해 반환됩니다.
범위가 지정된 애플리케이션 또는 전역 범위 내에서 이 API를 사용할 수 있습니다.
이 API는 sn_ws 네임스페이스에서 실행됩니다.
RESTResponseV2 - getAllHeaders()
중복 헤더를 포함하여 응답에 포함된 모든 헤더를 반환합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| List<GlideHTTPHeader> | 응답에 포함된 헤더 목록입니다. 각 헤더는 헤더 이름과값을 포함하는 GlideHTTPHeader 객체로 표시됩니다. |
다음 코드 예제에서는 REST Table API를 호출한 다음 응답에 있는 모든 헤더를 나열하는 방법을 보여 줍니다.
var request = new sn_ws.RESTMessageV2();
request.setEndpoint('http://<SN_Instance_host>/api/now/table/incident');
request.setHttpMethod('GET');
request.setBasicAuth('username', 'password');
request.setRequestHeader("Accept", "application/json");
var res = request.execute();
if (res.getStatusCode() != 200) {
gs.info('Bad Request');
}
var headers = res.getAllHeaders();
for(var i in headers){
gs.info(headers[i].name + ': ' + headers[i].value);
}
응답 헤더
X-Is-Logged-In: true
X-Transaction-ID: e3003cb2db8c
X-Total-Count: 66
X-Content-Type-Options: nosniff
Pragma: no-store,no-cache
Cache-Control: no-cache,no-store,must-revalidate,max-age=-1
Expires: 0
Content-Type: application/json;charset=UTF-8
Date: Fri, 14 May 2021 16:05:10 GMT
Connection: close
Server: ServiceNow
JSESSIONID=5041870726ADADFAB2EE2BF8E7E01596; Path=/; HttpOnly; SameSite=None; Secure
Set-Cookie: glide_user=; Max-Age=0; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; HttpOnly; SameSite=None; Secure
Set-Cookie: glide_user_session=; Max-Age=0; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/; HttpOnly; SameSite=None; Secure
Set-Cookie: glide_user_route=glide.f1aa2015b3fa5fa8dfe567386cde8fd5; Max-Age=2147483647; Expires=Wed, 01-Jun-2089 19:19:17 GMT; Path=/; HttpOnly; SameSite=None; Secure
Set-Cookie: glide_session_store=AF003CB2DB8CF8103DD9C39D139619C7; Max-Age=1800; Expires=Fri, 14-May-2021 16:35:10 GMT; Path=/; HttpOnly; SameSite=None; Secure
Set-Cookie: BIGipServerpool_ddershem=2643023626.45630.0000; path=/; Httponly; Secure; SameSite=None; Secure
Strict-Transport-Security: max-age=63072000; includeSubDomains
RESTResponseV2 - getBody()
REST 응답 본문의 내용을 가져옵니다.
요청 본문을 텍스트 콘텐츠로 가져오려는 경우 이 함수를 사용합니다. 응답을 이진 첨부 파일로 저장할 때는 이 방법을 사용하지 마십시오. RESTMessageV2 객체가 saveResponseBodyAsAttachment(...) 함수라는 경우 연결된 RESTResponseV2 객체에서 getBody() 를 사용하면 오류가 발생합니다. 응답을 첨부 파일로 저장할 때 아웃바운드 REST 메시지가 실패하면 응답에서 getErrorMessage() 를 호출하여 본문 내용을 검색합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 문자열 | REST 응답 본문입니다. |
var sm = new sn_ws.RESTMessageV2("Yahoo Finance","get"); //Might throw exception if message doesn't exist or not visible due to scope.
var response = sm.execute();
var responseBody = response.getBody();
RESTResponseV2 - getCookies()
응답에 포함된 모든 쿠키를 반환합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 객체 | 쿠키를 나타내는 문자열의 배열입니다. 배열을 반복하여 각 쿠키에 대한 작업을 수행합니다. |
응답의 개별 쿠키를 표시합니다.
var cookies = response.getCookies();
for (var i = 0; i < cookies.length; i++) {
gs.info('cookie: ' + cookies.get(i));
}
cookie: JSESSIONID=4135AA97A5D12DA22EF614AA2B0CAFD8.node20; Path=/; Secure; HttpOnly
cookie: SABASESSIONID=370152970.36895.0000; path=/RESTResponseV2 - getErrorCode()
REST 트랜잭션 중에 오류가 발생한 경우 숫자 오류 코드를 가져옵니다.
이 오류 코드는 HTTP 오류 코드가 아닌 에만 해당 Now Platform됩니다. ServiceNow 고객 지원의 도움이 필요한 경우 이 오류 코드를 제공하십시오.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 번호 | 소켓 시간 제한의 경우 1과 같은 숫자 오류 코드입니다. |
var sm = new sn_ws.RESTMessageV2("Yahoo Finance","get"); //Might throw exception if message doesn't exist or not visible due to scope.
var response = sm.execute();
var errorCode = response.getErrorCode();
RESTResponseV2 - getErrorMessage()
REST 트랜잭션 중에 오류가 발생한 경우 오류 메시지를 가져옵니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 문자열 | 오류 메시지. |
var sm = new sn_ws.RESTMessageV2("Yahoo Finance","get"); //Might throw exception if message doesn't exist or not visible due to scope.
var response = sm.execute();
var errorMsg = response.getErrorMessage();
RESTResponseV2 - getHeader(문자열 이름)
지정된 헤더의 값을 가져옵니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 이름 | 문자열 | Set-Cookie처럼 값을 원하는 헤더의 이름입니다. |
| 유형 | 설명 |
|---|---|
| 문자열 | 지정된 헤더의 값입니다. |
var sm = new sn_ws.RESTMessageV2("Yahoo Finance","get"); //Might throw exception if message doesn't exist or not visible due to scope.
var response = sm.execute();
var headerVal = response.getHeader("Content-Type");
RESTResponseV2 - getHeaders()
REST 응답에서 반환된 모든 헤더와 관련 값을 가져옵니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 객체 | 각 헤더의 이름을 연결된 값에 매핑하는 객체입니다. |
var sm = new sn_ws.RESTMessageV2("Yahoo Finance","get"); //Might throw exception if message doesn't exist or not visible due to scope.
var response = sm.execute();
var headers = response.getHeaders();
RESTResponseV2 - getQueryString()
REST 엔드포인트로 전송된 완전히 해결된 쿼리를 가져옵니다.
이 쿼리에는 엔드포인트 URL과 REST 메시지의 변수에 할당된 모든 값이 포함됩니다. 이 메서드는 직접 요청에 대한 응답에만 사용합니다. 비동기적으로 보낸 요청 또는 MID 서버를 사용하여 보낸 요청에는 이 방법이 지원되지 않습니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 문자열 | 완전히 해결된 쿼리입니다. |
var sm = new sn_ws.RESTMessageV2("Yahoo Finance","get"); //Might throw exception if message doesn't exist or not visible due to scope.
var response = sm.execute();
var queryString = response.getQueryString();
RESTResponseV2 - getResponseAttachmentSysid()
응답 본문 콘텐츠에서 작성된 첨부 파일의 sys_id 값을 가져옵니다.
이 응답과 연결된 RESTMessageV2 객체가 saveResponseBodyAsAttachment(...) 함수를 호출한 경우 getResponseAttachmentSysid() 를 사용하여 작성된 첨부 파일 레코드의 sys_id 가져옵니다. 새 첨부 파일 기록으로 추가 작업을 수행하려는 경우 이 기능을 사용합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 문자열 | 새 첨부 파일 기록의 Sys_id입니다. |
RESTResponseV2 - getStatusCode()
REST 공급자가 반환한 숫자 HTTP 상태 코드를 가져옵니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 번호 | REST 제공자가 반환한 숫자 상태 코드(예: 성공적인 응답에 대한 200)입니다. |
var sm = new sn_ws.RESTMessageV2("Yahoo Finance","get"); //Might throw exception if message doesn't exist or not visible due to scope.
var response = sm.execute();
var statusCode = response.getStatusCode();
RESTResponseV2 - haveError()
REST 트랜잭션 중에 오류가 발생했는지 나타냅니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 부울 | 오류가 있으면 true를 반환하고 오류가 없으면 false를 반환합니다. |
var sm = new sn_ws.RESTMessageV2("Yahoo Finance","get"); //Might throw exception if message doesn't exist or not visible due to scope.
var response = sm.execute();
var error = response.haveError();
RESTResponseV2 - waitForResponse(Number timeoutSecs)
인스턴스가 웹 서비스 제공자로부터 응답을 기다리는 시간을 설정합니다.
이 메서드는 이 REST 응답에 대해 glide.rest.outbound.ecc_response.timeout 속성을 무효화합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| timeoutSecs (시간 초과 초) | 번호 | 이 응답을 기다리는 시간(초)입니다. |
| 유형 | 설명 |
|---|---|
| void |
var sm = new sn_ws.RESTMessageV2("Yahoo Finance","get"); //Might throw exception if message doesn't exist or not visible due to scope.
var response = sm.executeAsync();
response.waitForResponse(60);