WSO2 API管理器未将上传的多个文件发送到后端服务器

时间:2018-08-30 14:55:38

标签: python flask wso2 wso2-am

我已经使用flask建立了一个python webservices应用程序。

创建了庞大的文档后,我在WSO2 API管理器中发布了该api。

API的发布和对该API的订阅均成功。 我也可以获取身份验证令牌。

我在做什么

  1. 要使用该API,我要在Postman / Angular应用程序中上传2个excel文件
  2. 然后将文件发送到WSO2服务器URL,然后将其发送到python服务器
  3. 当python服务器接收到文件时,它将对其进行解析。
  4. 进行一些计算并返回响应数据对象。

现在问题出在步骤3。在Python端收到的文件不是excel格式。两个文件的数据都组合到一个FileStorage对象中。

请参见下面的快照

Instead of two One FileStorage object received in request.files

我正在邮递员以及有角度的应用程序中尝试所有这一切,但这两种方法均无效。 我什至在WSO2 API管理器中已发布的应用程序页面上大张旗鼓地尝试了它,但这也不起作用。

Sending Files Via WSO2 Swagger

最有效的方法

当我尝试发布的应用程序的Swagger时,或者,当我通过邮递员使用服务直接向python的服务器发出请求时。

我都以正确的所需格式获取了两个文件。

File received properly when tried with python app's swagger page

能否请您帮助我了解我可能做错了什么。

我正在使用以下内容类型

'content-type: multipart/form-data; 

1 个答案:

答案 0 :(得分:0)

经过一番挖掘,我在Multipart form data file upload using WSO2 API manager?找到了解决方案

我添加了

<messageBuilder contentType="multipart/form-data"
            class="org.wso2.carbon.relay.BinaryRelayBuilder"/>

<messageFormatter contentType="multipart/form-data"
            class="org.wso2.carbon.relay.ExpandingMessageFormatter"/>

在axis2.xml文件中的 JSON消息生成器 JSON消息格式器部分中

<API-M_HOME>repository\conf\axis2\axis2.xml