我想将我的android模拟器连接到运行localhost:2000的node js本地服务器,我搜索并找到了一种方法来做到这一点,但它不起作用。 模拟器设置中的本地主机名采用 localhost,所以我使用 localhost 作为主机名,我尝试使用笔记本电脑的 IP 地址,但它无效代理
import 'dart:convert';
import 'package:http/http.dart' as http;
class Http {
static String url = "http://10.0.2.2:2000/api/";
static postProduct(Map pData) async {
try {
final response = await http.post(
Uri.parse("${url}add_product"),
body: pData,
);[![enter image description here][1]][1]
if (response.statusCode == 200) {
var data = jsonDecode(response.body.toString());
print(data);
} else {
print('Failed to load data');
}
} catch (e) {
print(e.toString());
}
}
}
不要连接到
localhost
,而是连接到计算机的 IP 地址。如果您进入命令行并输入 ipconfig/all
(在 Windows 上),您就可以找到它。因此,在 dart 代码中将 localhost 替换为你的 IP,无需进一步配置就可以了