Как прочитать переменную, созданную во время потока, и установить ее в качестве заголовка в компоненте HTTP-запроса? - PullRequest
0 голосов
/ 05 июня 2019

Я боролся за доступ к переменной, которая была определена во время потока, и теперь мне нужно использовать ее как часть заголовка авторизации в компоненте HTTP-запроса.До сих пор я пробовал следующие способы:

"Bearer " ++ vars.myVar
"Bearer " ++ #[vars.myVar]
"Bearer #[vars.myVar]"

Ни один из них не работает, так как я могу видеть необработанный ввод в журналах консоли, который выглядит следующим образом:

POST /webserviceurl HTTP/1.1
accept: application/json
authorization: "Bearer " ++ #[vars.myVar]
x-correlation-id: 06386edf-93a9-4d38-a117-d971f9eb7c11
Host: test.salesforce.com:443
User-Agent: AHC/1.0
Connection: keep-alive
Content-Type: application/json

Здесьтакое определение для конфигурации HTTP-запроса:

<http:request-config name="HTTP_Request_configuration" doc:name="HTTP Request configuration" doc:id="ad136a30-3119-44d1-ac13-8163214df28b" >
    <http:request-connection protocol="HTTPS" host="${SalesforceBaseUrl}" port="443" >      
    </http:request-connection>
    <http:default-headers >
        <http:default-header key="content-type" value="application/json" />
        <http:default-header key="accept" value="application/json" />
        <http:default-header key="Authorization" value='"Bearer " ++ #[vars.myVar]' />
    </http:default-headers>
</http:request-config>

Что мне здесь не хватает?Какой из них является правильным способом доступа к переменной там?

1 Ответ

3 голосов
/ 05 июня 2019

Ваше значение не может быть смешано, это либо выражение, либо буквенная строка (кроме как в логгере).

Так что в этом случае оно должно быть:

#["Bearer " ++ vars.myVar]
...