54.15. 使用 "raw" Salesforce 复合
由于 rawPayload 选项,可以在路由中准备 Salesforce JSON 请求直接调用 Salesforce 复合。
例如,您可以有以下路由:
from("timer:fire?period=2000").setBody(constant("{\n" +
" \"allOrNone\" : true,\n" +
" \"records\" : [ { \n" +
" \"attributes\" : {\"type\" : \"FOO\"},\n" +
" \"Name\" : \"123456789\",\n" +
" \"FOO\" : \"XXXX\",\n" +
" \"ACCOUNT\" : 2100.0\n" +
" \"ExternalID\" : \"EXTERNAL\"\n"
" }]\n" +
"}")
.to("salesforce:composite?rawPayload=true")
.log("${body}");
路由直接以 JSON 的形式创建正文,并使用 rawPayload=true 选项直接提交到 Salesforce 端点。
使用这个方法,您可以对 Salesforce 请求有完全的控制权。
POST 是向 Salesforce 发送原始复合请求的默认 HTTP 方法。使用 CompMethod 选项覆盖到其他支持的值 GET,这将返回其他可用复合资源的列表。