【发布时间】:2014-10-28 07:40:12
【问题描述】:
在 Dart 中,我正在开发一款网页游戏。在这种情况下,我需要一个可以从 URL 获取数据的函数,就像在 PHP 中获取数据一样。我该怎么做?
例如,假设我在加载网页游戏时将以下内容附加到我的 URL:?id=15&randomNumber=3.14。如何将它们作为原始字符串(首选)或其他格式在 Dart 中获取?
【问题讨论】:
在 Dart 中,我正在开发一款网页游戏。在这种情况下,我需要一个可以从 URL 获取数据的函数,就像在 PHP 中获取数据一样。我该怎么做?
例如,假设我在加载网页游戏时将以下内容附加到我的 URL:?id=15&randomNumber=3.14。如何将它们作为原始字符串(首选)或其他格式在 Dart 中获取?
【问题讨论】:
您可以使用 dart:core 中的 Uri 类
https://api.dartlang.org/apidocs/channels/stable/dartdoc-viewer/dart-core.Uri
即:
main() {
print(Uri.base.toString()); // http://localhost:8082/game.html?id=15&randomNumber=3.14
print(Uri.base.query); // id=15&randomNumber=3.14
print(Uri.base.queryParameters['randomNumber']); // 3.14
}
【讨论】:
import 'dart:html';
void doWork(){
var uri = Uri.dataFromString(window.location.href); //converts string to a uri
Map<String, String> params = uri.queryParameters; // query parameters automatically populated
var param1 = params['param1']; // return value of parameter "param1" from uri
var param2 = params['param2'];
print(jsonEncode(params)); //can use returned parameters to encode as json
}
【讨论】:
导入'dart:html'然后就可以使用window.location...
【讨论】:
Location 是什么?
dart:html 和 window.location 中的类返回该类的实例。 dartpad.dartlang.org/79fadf90240c5efd1aeaff80e9187873