如何在dart中使用HttpClient发出HTTPS请求?
我正在使用来自dart的HttpClient(dart:io包,而不是dart:http),我想发送一个HTTPS请求。有办法吗?我似乎找不到一个方法允许我这样做。如何在dart中使用HttpClient发出HTTPS请求?,dart,dart-html,Dart,Dart Html,我正在使用来自dart的HttpClient(dart:io包,而不是dart:http),我想发送一个HTTPS请求。有办法吗?我似乎找不到一个方法允许我这样做。newhttpclient().getUrl(Uri.parse()https://www.somedomain.com')); 发送HTTPS请求的步骤与dart/FLATT中的HTTP相同,您需要添加的一件事是允许自签名证书处理badCertificateCallback,将此添加到您的HttpClient: var httpCl
newhttpclient().getUrl(Uri.parse()https://www.somedomain.com'));
发送HTTPS请求的步骤与dart/FLATT中的HTTP相同,您需要添加的一件事是允许自签名证书处理badCertificateCallback,将此添加到您的HttpClient:
var httpClient = HttpClient();
httpClient.badCertificateCallback =
((X509Certificate cert, String host, int port) =>
true); // Allow self signed certificates
参考:
参考资料:为什么不试试
HttpClient.open(url)
?我没有看到带有该签名的方法……对不起,甚至没有看到带有openUrl的方法。我本来希望能够通过这个计划来开启。其他方法不适合,因为我也需要其他HTTP动词(即PUT和PATCH)?我想在这种情况下你应该删除这个问题。不,因为没有一个带有签名的方法可以让我在这个表单中指定url。对不起,有一个方法,我没有看到。我太专注于如何将方案转换为开放方法。还有另一种叫做openUrl的方法来完成这项工作。然而,很奇怪,你不能将scheme传递到open方法中。你能用openUrl
回答这个问题,让未来的Darters看到它吗?很抱歉,我不知道API与浏览器中的API有如此大的不同(有一段时间没有使用它)。现在我明白了为什么它不是那么明显。
HttpClient client = new HttpClient();
client.getUrl(Uri.parse("http://www.example.com/"))
.then((HttpClientRequest request) {
// Optionally set up headers...
// Optionally write to the request object...
// Then call close.
...
return request.close();
})
.then((HttpClientResponse response) {
// Process the response.
...
});