如何在 flutter 中将数据下拉列表发布到服务器

问题描述 投票:0回答:1

我有一个案例,我想向服务器发送数据。这里我有 3 个必须发送的身体,但我很困惑。

这里的 transcript_value 键有 2 个值,如果选择数字 1,那么它将发送 VALUE TRANSCRIPTS 而不发送 SEMESTER,如果选择数字 2,那么它将发送 KHS 和 SEMESTER(下拉)。

如何在以下两个条件下将数据发布到服务器

我对如何解释感到困惑,但我希望你能理解 接下来我展示 API 以及移动设备上的显示

在 API 中

flutter dart post
1个回答
0
投票

创建>> pengajuan-class.dart(你也可以创建你所有的json to dart >>https://javiercbk.github.io/json_to_dart/)

class pengajuanClass {
  String? status;
  String? code;
  String? message;

  pengajuanClass({this.status, this.code, this.message});

  pengajuanClass.fromJson(Map<String, dynamic> json) {
    status = json['status'];
    code = json['code'];
    message = json['message'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['status'] = this.status;
    data['code'] = this.code;
    data['message'] = this.message;
    return data;
  }
}

Create>> pengajuan-services.dart(pengajuanClass 需要快速修复,因为你需要导入这个类)

import 'dart:convert';
import 'package:http/http.dart' as http;


class transcriptValueServices {
    
  static Future<pengajuanClass> AddpengajuanService(
    String jenis_transkrip,
    String semester,
    String keperluan_cetak,
  ) async {
    try {
      final response = await http
          .post(
            Uri.parse(
              'your URL',
            ),
            headers: {
            // write all your headers
              'Content-Type': 'application/json',
              'Authorization': 'Bearer ***', // If u have a bearer write it or delete this.
            },
            body: jsonEncode({
              'jenis_transkrip': jenis_transkrip,
              'semester': semester,
              'keperluan_cetak': keperluan_cetak,
            }),
          )
          .timeout(const Duration(seconds: 30));
      var json = jsonDecode(response.body);

      if (response.statusCode == 200) {
        return pengajuanClass.fromJson(json);
      }
      return pengajuanClass(code: "999");
    } catch (e) {
      return pengajuanClass(code: "999");
      
    }
  }
}

你可以在点击事件中这样调用 >> (不要忘记写异步点击事件示例:onPressed: () async { } ) //“pengajuanClass”和“transcriptValueServices”需要快速修复,因为你需要导入

pengajuanClass returnData = await transcriptValueServices.AddpengajuanService("selected data","selected data","selected data");

希望有用^^

© www.soinside.com 2019 - 2024. All rights reserved.