flutter API正在调用并获得响应,但数据库中未保存数据

qoefvg9y  于 2023-03-31  发布在  Flutter
关注(0)|答案(1)|浏览(101)

我试图在Dio库的帮助下在我的flutter项目中调用PATCH API。这是一个更新客户详细信息的API。它正在获取200状态代码并获得适当的响应。但数据未保存在数据库中。从POSTMAN调用时,API工作正常。它只是在我的flutter项目中不起作用。我已经尝试清除缓存,卸载和重新安装,并尝试不同的登录以及。什么可能是这种奇怪的行为的原因。
这是API函数

Future updateCustomer(Map<String, dynamic> body) async {
    try {
      final Response res =
          await _dioClient.patch(Endpoints.updateCustomer, data: body);
      return true;
    } catch (e) {
      return false;
    }
  }

此PATCH函数

Future<Response> patch(
    String uri, {
    data,
    Map<String, dynamic>? queryParameters,
    Options? options,
    CancelToken? cancelToken,
    ProgressCallback? onSendProgress,
    ProgressCallback? onReceiveProgress,
  }) async {
    final String key = sprintf('%s+%s', ['get', uri]);
    try {
      Future _future;
      if (running.containsKey(key)) {
        _future = running[key]!;
      } else {
        _future = _dio.patch(
          uri,
          data: data,
          queryParameters: queryParameters,
          options: options,
          cancelToken: cancelToken,
          onSendProgress: onSendProgress,
          onReceiveProgress: onReceiveProgress,
        );
        running[key] = _future;
      }
      Response res = await _future;
      running.remove(key);
      return res;
    } catch (e) {
    
      running.remove(key);
      throw e;
    }
  }

调用API

if (_formKey.currentState!.validate()) {
                          Map<String, dynamic> body = {
                            "source_of_fund": sofValue,
                            "is_the_user_owner": behalfValue,
                            "political_association": pepValue,
                          };
                          var res = await context
                              .read<MainStore>()
                              .updateCustomer(body: body);

                          if (res) {
                            context.pushReplacementNamed('Nominee');
                          } else {
                            print("$res");
                          }
                        }
vlurs2pr

vlurs2pr1#

你检查过尸体了吗?我发现这个问题很熟悉,就像你的情况一样:
POST call works on Postman but not on Flutter

相关问题