가져오기 - 범위가 지정됨, 전역

  • 릴리스 버전: Yokohama
  • 업데이트 날짜 2025년 01월 30일
  • 읽기4분
  • Fetch API는 요청 및 응답 개체를 사용하여 리소스를 가져오는 메서드를 제공합니다.

    Fetch API는 백그라운드 스크립트와 HTTP 호출을 할 수 있는 모든 위치(예: REST 엔드포인트)에서 사용할 수 있습니다. Fetch API를 사용하면 헤더, 본문 옵션 등을 설정하여 간단하고 복잡한 가져오기 요청을 모두 수행할 수 있습니다.

    이 API는 외부 웹 사이트에서 자원을 가져오기 위한 다양한 작업을 제공하는 Fetch API 세트의 일부입니다. 전체 Fetch API 컬렉션에는 다음이 포함됩니다.

    가져오기 작업을 지원하기 위해 시스템 속성 glide.hosts.allowlist를 사용하면 가져오기 메서드가 액세스할 수 있는 호스트를 제어할 수 있습니다. RestMessageV2와 같은 HTTP API 및 위에서 언급한 API에 적용됩니다. glide.hosts.allowlist에 대한 자세한 내용은 문서를 참조하십시오Available system properties.

    가져오기 - 가져오기(문자열 자원, 객체 옵션)

    네트워크에서 자원을 가져오는 프로세스를 시작하고 응답이 사용 가능해지면 이행되는 약속을 반환합니다.

    표 1. 매개변수
    이름 유형 설명
    자원 문자열 또는 객체 필수 가져올 자원입니다.
    허용되는 값:
    • URL 객체를 포함하여 가져오려는 자원의 URL을 제공하는 문자열 또는 문자열이 있는 객체입니다. URL은 문서의 baseURI 인 기본 URL을 기준으로 할 수 있습니다.
    • 객체입니다 요청 가져오기 - Request() .
    옵션 객체 옵션입니다. RequestInit 가져오기 - 범위가 지정됨, 전역 요청에 적용할 사용자 지정 설정을 포함하는 객체입니다.

    기본값: 커스터마이제이션 설정 없이 요청이 전달됩니다.

    표 2. 반환
    유형 설명
    객체 응답 객체로 확인되는 약속입니다.
    fetch() 약속은 예를 들어 잘못된 형식의 요청 URL 또는 네트워크 오류로 인해 요청이 실패한 경우에만 거부됩니다.
    주:
    서버가 404 또는 504와 같은 오류를 나타내는 HTTP 상태 코드로 응답하는 경우 fetch() 약속은 거부된 것으로 간주되지 않습니다. 이 경우 then() 핸들러를 사용하여 ok 및 status 응답 가져오기 - 범위가 지정됨, 전역속성을 확인합니다.
    다음 예제에서는 및fetch()를 사용하여 요청 가져오기 - Request() 새 Request 객체를 형성하여 데이터를 검색하는 방법을 보여줍니다. 다음은 코드의 각 부분이 사용되는 방법에 대한 간단한 설명입니다.
    async function fetchIncidents() {
        const url = 'https://your-instance.service-now.com/api/now/table/incident';
        const username = 'your_username';
        const password = 'your_password';
    
        // Create a Request object
        const request = new Request(url, {
            method: 'GET',
            headers: {
                'Content-Type': 'application/json',
                Authorization: 'Basic ' + btoa(`${username}:${password}`)
            }
        });
    
        // Fetch data and use response.json() to process it
        const response = await fetch(request);
        const data = await response.json(); // Parse the response to JSON
        console.log(data.result); // Log the incidents data to system logs
    }
    
    fetchIncidents();

    출력:

    [
        { "number": "INC0001", "short_description": "System outage" },
        { "number": "INC0002", "short_description": "Password reset request" }
    ]