我有REST API url方法,该方法将返回文件作为其响应,我需要使用WSO2 EI REST API对其进行包装。
是否可以将基于文件的响应流式传输或传递回请求的用户,而无需存储该文件?
答案 0 :(得分:0)
您应该能够使用wso2文件连接器[1]将文件作为API序列内的流读取。您可以像doc [2]中那样下载并启用文件连接器。遵循[1]中的“从文件读取内容”部分,您应该可以将 streaming 可选参数设置为true。另外,请遵循 Note 部分为大型文件启用流式传输。
下面显示了示例API序列
<?xml version="1.0" encoding="UTF-8"?>
<api xmlns="http://ws.apache.org/ns/synapse"
name="fileStream"
context="/file-stream"
version="1.0"
version-type="context">
<resource methods="GET" url-mapping="/test">
<inSequence>
<fileconnector.read>
<source>{source_location}</source>
<filePattern>{file_pattern}</filePattern>
<contentType>{content_type}</contentType>
<streaming>true</streaming>
</fileconnector.read>
<respond/>
</inSequence>
</resource>
</api>
[1]-https://docs.wso2.com/display/ESBCONNECTORS/Working+with+the+File+Connector [2]-https://docs.wso2.com/display/ESBCONNECTORS/File+Connector