Я работаю в одном из сценариев в WSO2 ESB 6.4.0, где у меня есть файл, помещенный в каталог (на том же сервере, где работает ESB), и мне нужно отправить запрос на внешний restURL с телом в виде формы-данные, прикрепив файл. Вот мой прокси-сервер>
<?xml version="1.0" encoding="UTF-8"?>
<proxy name="sendusingformdata" startOnLoad="true" transports="http https vfs" xmlns="http://ws.apache.org/ns/synapse">
<target>
<inSequence>
<property name="alias" scope="default" type="STRING" value="anythinginalias"/>
<property name="endpoint" scope="default" type="STRING" value="anythinginendpoint"/>
<property name="Authorization" scope="transport" type="STRING" value="Bearer token"/>
<payloadFactory media-type="xml">
<format>
<root xmlns="">
<alias>$1</alias>
<endpoint>$1</endpoint>
<payload>$1</payload>
</root>
</format>
<args>
<arg evaluator="xml" expression="$ctx:alias"/>
<arg evaluator="xml" expression="$ctx:endpoint"/>
<arg evaluator="xml" expression="$ctx:payload"/>
</args>
</payloadFactory>
<property name="messageType" scope="axis2" type="STRING" value="multipart/form-data"/>
<property name="ContentType" scope="axis2" type="STRING" value="multipart/form-data"/>
<call>
<endpoint>
<http method="post" uri-template="http://url.com/test"/>
</endpoint>
</call>
</inSequence>
<outSequence/>
<faultSequence/>
</target>
</proxy>
Я ввел полезную нагрузку в посредник payloadfactory, но не смог получить этот файл из каталога server / local, а также имя файла.
Кроме того, кто яДелая здесь, я пытаюсь опросить каталог (где хранится файл) и с помощью transport.vfs.FileURI, я выбираю файл.
После этого я застрял, я не могу прикрепить тот жефайл, который я выбрал из каталога, используя transport.vfs.FileURI
Это команда curl от почтальона, для которой я хочу создать прокси и выполнить из wso2 ESB
curl --location --request POST 'http://url.com/test' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Authorization: Bearer token' \
--form 'payload=@/C:/Users/payloaddirectory/text.txt' \
--form 'alias=anythinginalias' \
--form 'endpoint=anythinginendpoint'
Может кто-нибудь, пожалуйста, дайте мне знать, как достичь этого или есть какой-то другой способ.
Спасибо