JSON을 Rust로 변환
JSON 데이터를 Rust 코드로 변환합니다. Rust 개발을 위한 Serde 호환 struct를 생성합니다. 무료, 브라우저에서 실행—서버로 데이터 전송 없음.
JSON 입력
Rust 출력
JSON을 Rust란?
Rust에서 REST API를 호출할 때, Serde로 역직렬화하기 전에 일치하는 struct 정의가 필요합니다. 특히 깊이 중첩된 JSON의 structs를 수작업으로 작성하는 건 번거롭고 오류가 발생하기 쉽습니다. 이 도구는 Serde 호환 Rust structs를 자동으로 생성합니다. JSON을 붙여넣으면 #[derive(Serialize, Deserialize)]가 포함된 바로 사용 가능한 structs가 생성되어 Cargo 프로젝트에 바로 추가할 수 있습니다.
이 도구는 JSON에서 Rust struct를 생성합니다. Serialize/Deserialize derive를 위해 Serde를 활성화하세요. 선택적 필드를 위해 Option 타입을 활성화하세요. 출력은 serde_json::from_str 및 serde_json::to_string과 함께 작동합니다.
변환은 브라우저에서 완전히 실행됩니다. JSON은 서버로 전송되지 않습니다.
JSON을 Rust가 도움이 되는 경우
REST API를 사용하는 Rust 앱을 개발할 때 타입이 지정된 struct가 필요합니다. 샘플 응답을 여기에 붙여넣어 Serde 지원이 포함된 일치하는 struct를 생성하세요.
이 도구 사용 방법
JSON 붙여넣기 또는 업로드
JSON을 복사하여 왼쪽 편집기에 붙여넣으세요. 업로드를 클릭하여 파일을 로드할 수도 있습니다. 예제 데이터를 위해 샘플 버튼을 사용하세요. 설정 패널에서 struct 이름과 옵션을 설정하세요.
복사 또는 다운로드
복사 또는 다운로드를 사용하여 코드를 가져오세요. Cargo.toml에 serde와 serde_json을 추가하세요. Rust 프로젝트에 붙여넣으세요.
JSON을 Rust 예제
JSON 객체에서 Rust struct를 생성하는 예제입니다.
예제: 구독자 레코드
JSON 입력:
생성된 Rust 출력:
JSON을 Rust가 도움이 되는 경우
대부분의 개발자는 REST API 통합 시 이것이 필요합니다. 여기에 붙여넣으면 즉시 사용할 수 있는 Serde 호환 struct를 얻을 수 있습니다.
두 JSON 파일을 먼저 병합해야 한다면 별도의 JSON 병합 도구가 있습니다.
API 응답, 설정 파일 또는 데이터 내보내기는 종종 JSON입니다. 여기서 실행하면 Rust struct를 생성하는 데 도움이 됩니다.
자주 묻는 질문
Rust에서 Serde로 JSON을 역직렬화하려면?
Cargo.toml에 serde = { version = "1.0", features = ["derive"] }와 serde_json = "1.0"을 추가하세요. struct에 Deserialize를 derive하고 serde_json::from_str::<YourStruct>(&json_string)를 호출하세요. JSON을 붙여넣어 여기서 struct를 생성하세요.
Rust에서 #[serde(rename)]은 무엇을 하나요?
#[serde(rename = "jsonKey")]는 Serde에게 특정 JSON 키를 Rust 필드 이름에 매핑하도록 지시합니다. JSON이 camelCase(planName 등)를 사용하고 Rust struct가 snake_case(plan_name)를 사용할 때 유용합니다. 생성기는 필요할 때 자동으로 추가합니다.
Rust에서 옵션 또는 nullable JSON 필드를 어떻게 처리하나요?
Option Types를 활성화하여 nullable 필드를 Option<T>로 감싸세요. 이렇게 하면 없거나 null인 JSON 필드가 오류를 일으키는 대신 None으로 역직렬화됩니다. 직렬화 시 null 필드를 생략하려면 #[serde(skip_serializing_if = "Option::is_none")]을 추가할 수도 있습니다.
내 JSON이 서버로 전송되나요?
아니요. struct 생성은 완전히 브라우저에서 실행됩니다. JSON이 내 기기를 절대 떠나지 않습니다.
중첩된 JSON 객체와 배열은 어떻게 되나요?
중첩된 JSON 객체는 각자의 #[derive(Serialize, Deserialize)]를 가진 별도의 Rust structs가 됩니다. 배열은 그 struct 타입의 Vec<T>가 됩니다. 생성기는 임의의 중첩 깊이를 처리합니다.
관련 도구
Rust JSON은 Serde와 serde_json을 참조하세요. JSON은 JSON 사양을 참조하세요.