飞镖中有没有函数可以执行urlencoding?我正在使用XMLHttpRequest对象进行AJAX调用,并且我需要将url编码为url。飞镖中的urlencoding
我在dartlang.org上搜索过,但没有找到任何结果。
飞镖中有没有函数可以执行urlencoding?我正在使用XMLHttpRequest对象进行AJAX调用,并且我需要将url编码为url。飞镖中的urlencoding
我在dartlang.org上搜索过,但没有找到任何结果。
更新:现在有用于编码支持/在the Dart Uri class
达特的URI代码放置在一个单独的库解码URI称为dart:uri(这样它可以dart:html
和dart:io
之间共享)。我看起来像它目前不包含urlencode
函数,所以现在最好的选择可能是使用this Dart实现JavaScript的encodeUriComponent
。
我不'认为现在还没有。检查出http://unpythonic.blogspot.com/2011/11/oauth20-and-jsonp-with-dartin-web.html和encodeComponent方法。
请注意,它缺少一些字符,它需要扩展。飞镖真的应该有这个内置和容易去。事实上它可能有,但我没有找到它。
我写了这个小函数来将一个Map转换成一个URL编码的字符串,这可能是你正在寻找的东西。
String encodeMap((Map data) {
return data.keys.map((key) => "${Uri.encodeComponent(key)}=${Uri.encodeComponent(data[key])}").join("&");
}
var uri = 'http://example.org/api?foo=some message';
var encoded = Uri.encodeFull(uri);
assert(encoded == 'http://example.org/api?foo=some%20message');
var decoded = Uri.decodeFull(encoded);
assert(uri == decoded);
http://www.dartlang.org/docs/dart-up-and-running/contents/ch03.html#ch03-uri
我想我可以忍受它现在。但是如果这个get添加到dart:uri会很好。 – Sudar 2012-04-20 13:57:16
@Sudar同意我会尽力让它出现在 – 2012-04-20 14:01:26
dart:uri已被删除,现在它已成为核心的一部分。 https://groups.google.com/a/dartlang.org/forum/#!topic/misc/pHyoawHOhU0 – Max 2013-07-16 01:42:56