[]
        
(Showing Draft Content)

원격 테이블 추가

원격 테이블은 서버에서 데이터를 가져오며, 선택적으로 변경 사항을 다시 서버와 동기화할 수 있습니다.

메모리 테이블과 달리 원격 테이블은 fetch()가 실행되기 전까지 데이터를 포함하지 않습니다.

원격 테이블은 다음을 지원합니다.

  • 서버 측 데이터 로드

  • 데이터 동기화(단일 또는 일괄 모드)

  • 스키마 매핑

  • 여러 응답 프로토콜

기본 원격 테이블(읽기 전용)

원격 테이블의 최소 요구 사항은 read 구성입니다.

표준화된 products 데이터 집합을 사용하는 예제:

const dataManager = spread.dataManager();

const products = dataManager.addTable("products", {
    remote: {
        read: {
            url: "https://demodata.mescius.io/northwind/api/v1/products",
            method: "GET"
        }
    }
});

이 시점에서 테이블 구조는 정의되었지만 아직 레코드는 포함되어 있지 않습니다.

필수 초기화

모든 테이블은 추가 작업 전에 fetch()를 호출해야 합니다.

orders.fetch();

fetch()를 호출하지 않으면 테이블은 비어 있는 상태로 유지됩니다.

예제:

orders.fetch().then(function () {
    const view = orders.addView("orderView");
});

fetch()는 다음 작업을 수행합니다.

  • 원격 데이터 가져오기

  • 스키마 적용

  • 내부 상태 초기화

모든 원격 작업은 완료된 fetch에 의존합니다.

원격 데이터에서 스키마 사용

원격 응답에는 필드 매핑 또는 형식 변환이 필요할 수 있습니다.

예제:

const products = dataManager.addTable("products", {
    remote: {
        read: {
            url: "https://demodata.mescius.io/northwind/api/v1/products"
        }
    },
    schema: {
        columns: {
            id: { dataName: "ProductId" },
            name: { dataName: "ProductName" },
            price: { dataName: "UnitPrice", dataType: "number" },
            stock: { dataName: "UnitsInStock", dataType: "number" }
        }
    }
});

스키마 구성은 스키마섹션에 설명되어 있습니다.

동기화 활성화(미리 보기)

데이터 쓰기 저장을 활성화하려면 추가 원격 작업을 정의해야 합니다.

예제(단일 동기화 모드):

const products = dataManager.addTable("products", {
    remote: {
        read:   { url: "https://example.com/api/products", method: "GET" },
        create: { url: "https://example.com/api/product", method: "POST" },
        update: { url: "https://example.com/api/product", method: "PUT" },
        delete: { url: "https://example.com/api/product", method: "DELETE" }
    },
    autoSync: true
});

동기화 모드는 다음에서 설명합니다.

동기화 모드

지원되는 데이터 프로토콜

원격 테이블은 다음을 지원합니다.

  • 표준 JSON 응답

  • REST 어댑터

  • OData

  • OData v4

  • GraphQL

프로토콜 구성은 다음에 설명되어 있습니다.

원격 읽기 및 어댑터