使用Web View将参数发送到服务器(后方法)

时间:2018-08-17 08:53:02

标签: dart flutter

如何在Flutter中使用Web View将参数发送到服务器并获得响应? 我想转到我的URL并得到服务器的响应。但是我想通过Web View来实现

2 个答案:

答案 0 :(得分:0)

让我们举个例子。

假设如果我们在此处使用必需的用户名密码作为参数调用登录API

希望您知道我们必须导入以下软件包。

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

下面是我为了便于理解而采用的方法。

Future<http.Response> callWebServiceForLofinUser() async {

    final paramDic = {
      "username": 'email@example.com', 
      "password": '123456',
    };

    final loginData = await http.post(
      "http://www.xxxx.com/dev/api/user/userLogin.php",  // change with your API
      body: paramDic,
    );

    print(loginData.body);

    return loginData;
  }

如果您对以上代码有任何疑问,请随时问我。

答案 1 :(得分:0)

这对我有用。

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


final Map<String,dynamic> _login={
  "username":null,
  "password":null
};

//manually add parameters to the URL
final loginData = await http.post(
  "http://www.xxxx.com/dev/api/user/userLogin.php?username="+_login["username"]+"&password="+_login["password"],  // change with your API
  body: paramDic,
);

print(loginData.body);

或使用https://pub.dev/packages/dio

import 'package:flutter/material.dart';
import 'package:dio/dio.dart';
import 'dart:async';


final Map<String,dynamic> _login={
  "username":null,
  "password":null
};

Dio dio = new Dio();
Response response = await 
dio.post("http://www.xxxx.com/dev/api/user/userLogin.php,
queryParameters:_login,)
.then((onValue){
  print("Success $onValue");
}).catchError((onError){
  print("Error $onError");
});