方法'post'在null上被调用

时间:2019-01-27 23:47:56

标签: dart flutter

我要登录到服务器,并且需要输入用户名和密码。

首先,如何传递两个参数?我是这样尝试体内的:

from collections import defaultdict
dd = defaultdict(list, **{k: [] for k in [f'list_{i}' for i in range(5)]})

print(dd)
# defaultdict(<class 'list'>, {'list_0': [], 'list_1': [], 'list_2': [],
#                              'list_3': [], 'list_4': []})

body: {
  "login": username, "password": password
}

我这样创建函数,并始终收到“ NoSuchMethodError:在final String param = "login=$username&password=$password"; 上调用了方法'post'。

null

您介意向我解释这到底意味着什么吗?

完整错误日志:

  Future<http.Response> login(
      {@required String username, @required String password}) async {
    final String url = theUrl;

    final String param = "login=$username&password=$password";

    final response = await client.post(url, body: param, encoding: Encoding.getByName("UTF-8");

    return response;
  }

1 个答案:

答案 0 :(得分:1)

这意味着client变量在调用时为null

在调用client之前,必须确保login已初始化。