小编F.B*_*ann的帖子

适用于 shopware 6 的 Python swagger-client

再会,

我已经通过我的 GitLab ci pipline 中的 swagger-codegen-cli (v3) docker 映像为 Shopware 6 商店生成了一个 python 客户端。

我遇到的问题是每个端点都返回空数据,但奇怪的是,当我调试客户端时,我可以通过检查器看到数据,但是在返回数据之前的一个步骤中,它尝试反序列化数据并返回里面没有任何数据的字典。

return_data = response_data
if _preload_content:
    # deserialize response data
    if response_type:
        return_data = self.deserialize(response_data, response_type)
Run Code Online (Sandbox Code Playgroud)

这是从__call_api()函数。当我检查 response_data 时,我可以看到它包含我需要的数据,但 deserialize() 返回: {'data': None, 'included': None, 'links': None, 'meta': None}

我知道我可以将参数 _preload_content 设置为 false,但随后我将原始请求响应作为字节字符串获取,这违背了使用 swagger 客户端的目的。

  • 是不是我店的规格有问题?
  • 代码生成器工作不正常吗?
  • 或者是来自swagger的python生成器的问题?

编辑:

我将问题缩小到__init__()所有继承自 Success 类的 Response 类的功能:

    def __init__(self, data=None, links=None, *args, **kwargs):  # noqa: E501
        """InlineResponse200156 - a model defined in Swagger"""  # …
Run Code Online (Sandbox Code Playgroud)

python-3.x swagger shopware openapi swagger-codegen

5
推荐指数
0
解决办法
128
查看次数

标签 统计

openapi ×1

python-3.x ×1

shopware ×1

swagger ×1

swagger-codegen ×1