54.16. 원시 작업 사용
호출의 모든 측면을 완전히 원시 제어하여 salesforce에 HTTP 요청을 보냅니다. 요청 및 응답 본문의 직렬화 또는 역직렬화는 경로에서 수행해야 합니다. Content-Type
HTTP 헤더는 format
옵션에 따라 자동으로 설정되지만 rawHttpHeaders
옵션을 사용하여 재정의할 수 있습니다.
매개변수 | 유형 | 설명 | Default | 필수 항목 |
---|---|---|---|---|
요청 본문 |
| HTTP 요청 본문 | ||
rawPath |
| 도메인 이름 뒤에 있는 끝점 URL의 부분(예: '/services/data/v51.0/sobjects/Account/') | x | |
rawMethod |
| HTTP 메서드 | x | |
rawQueryParameters |
| 쿼리 매개변수로 포함할 메시지 헤더의 쉼표로 구분된 목록입니다. 이 작업이 자동으로 수행되므로 URL 인코딩 값을 지정하지 마십시오. | ||
rawHttpHeaders |
| HTTP 헤더로 포함할 메시지 헤더의 쉼표로 구분된 목록 |
54.16.1. 쿼리 예 링크 복사링크가 클립보드에 복사되었습니다!
이 예제에서는 REST API에 쿼리를 보냅니다. 쿼리는 "q"라는 URL 매개 변수로 전달되어야 하므로 q라는 메시지 헤더를 생성하고 해당 메시지 헤더를 URL 매개변수로 포함하도록 원시 작업에 지시합니다.
from("direct:queryExample") .setHeader("q", "SELECT Id, LastName FROM Contact") .to("salesforce:raw?format=JSON&rawMethod=GET&rawQueryParameters=q&rawPath=/services/data/v51.0/query") // deserialize JSON results or handle in some other way
from("direct:queryExample")
.setHeader("q", "SELECT Id, LastName FROM Contact")
.to("salesforce:raw?format=JSON&rawMethod=GET&rawQueryParameters=q&rawPath=/services/data/v51.0/query")
// deserialize JSON results or handle in some other way
54.16.2. SObject 예 링크 복사링크가 클립보드에 복사되었습니다!
이 예제에서는 생성
작업에서 REST API 연락처를 전달합니다. 원시
작업이 직렬화를 수행하지 않으므로 메시지 본문에서 XML을 전달해야 합니다.
from("direct:createAContact") .setBody(constant("<Contact><LastName>TestLast</LastName></Contact>")) .to("salesforce:raw?format=XML&rawMethod=POST&rawPath=/services/data/v51.0/sobjects/Contact")
from("direct:createAContact")
.setBody(constant("<Contact><LastName>TestLast</LastName></Contact>"))
.to("salesforce:raw?format=XML&rawMethod=POST&rawPath=/services/data/v51.0/sobjects/Contact")
응답은 다음과 같습니다.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Result> <id>0034x00000RnV6zAAF</id> <success>true</success> </Result>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Result>
<id>0034x00000RnV6zAAF</id>
<success>true</success>
</Result>