bho*_*bar 4 dart dart-http flutter
我有一个多字符串,我想转换为GET请求参数.
我有一个API端点/search
,它接受参数query
.现在通常你的请求看起来像http://host/search?query=Hello+World
.
我有一个String
Hello World,我想将其转换为此URL编码参数.
当然,我可以编写逻辑将其分解为单词并+
在其间添加一个但是我想知道URI类是否可以帮助这个
我正在使用Dart httpClient
来提出请求.
Future<String> _getJsonData(String queryToSearch) async {
List data = new List();
var httpClient = new HttpClient();
var request = await httpClient.getUrl(Uri.parse(
config['API_ENDPOINT'] + '/search?query=' +
queryToSearch));
var response = await request.close();
if (response.statusCode == HttpStatus.OK) {
var jsonString = await response.transform(utf8.decoder).join();
data = json.decode(jsonString);
print(data[0]);
return data[0].toString();
} else {
return "{}";
}
}
Run Code Online (Sandbox Code Playgroud)
基本上,需要编码queryToSearch
为URL参数.
Rém*_*let 10
您可以使用Uri.http(s)
将所有东西(查询,主机和路径)包装在一起并相应地对它们进行编码.
final uri = new Uri.http(config['API_ENDPOINT'], '/search', {"query": queryToSearch});
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3685 次 |
最近记录: |