【问题标题】:Can Retrofit generate query parameters with the same name in dart?Retrofit 可以在 dart 中生成同名的查询参数吗?
【发布时间】:2022-10-20 18:51:37
【问题描述】:

我遇到了这种类型的请求: 我需要像这样映射List<int>ids查询参数id

/api/available-specialists?id=3176&id=3170

即使没有对飞镖进行改造,是否有可能提出这个要求?

【问题讨论】:

    标签: flutter dart parameters retrofit


    【解决方案1】:

    我找到了解决方案。

    1. 在您创建 Dio 实例的地方,根据需要更新 ListFormat。 BaseOptions(listFormat: ListFormat.multi)。 ListFormat.multi 是默认值,它有助于将参数列表转换为字符串,如下所示:foo=value&foo=another_value。就我而言,一切正常,无需更新 ListFormat。

    2. 在您定义方法的存储库中,指定您的查询:

      @Query('status') List<int> statusList,

    3. 运行 flutter pub run build_runner build --delete-conflicting-outputs 然后重新运行您的应用程序。

    4. 当您发出请求时,您可以在日志中看到这样的 url:https://some-api/end-point/?status=2&status=4

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-23
      • 1970-01-01
      • 1970-01-01
      • 2013-08-06
      • 1970-01-01
      • 2022-12-15
      • 1970-01-01
      • 2017-06-29
      相关资源
      最近更新 更多