+
82
-

flutter post请求php问题

flutter中post到后端php,后端一直接受不到数据$_POST,求大神帮忙看看

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
-
可以使用get方式
import 'package:http/http.dart' as http;
import 'dart:async';


final Map _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);
by ppzhuzhu
+
1
-
可以修改php代码,让其支持json post的数据,如下
/**
* 获取 post 参数; 在 content_type 为 application/json 时,自动解析 json
* @return array
*/
private function initPostData()
{
if (empty($_POST) && false !== strpos($this->contentType(), 'application/json')) {
$content = file_get_contents('php://input');
$post = (array)json_decode($content, true);
} else {
$post = $_POST;
}
return $post;
}
by ppzhuzhu
我知道答案,我要回答