飛鏢中有沒有函數可以執行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