Flutter / Dart Uri不在参数中转义冒号或斜线“ https://”

问题描述 投票:0回答:1

是否有一种方法可以逃脱冒号并在参数中使用正斜杠?

Uri.https('example.com', '/api', {
          'response_type': 'code',
          'client_id': 'id',
          'redirect_uri': 'https://www.google.com',
        })

上面变成了这个:https%3A%2F%2Fwww.google.com

编码不起作用

final redirect = Uri.encodeFull('https://www.google.com');
final uri = Uri.https('example.com', '/api', {'redirect_uri': redirect});

print(redirect); // https://www.google.com
print(uri.query); // redirect_uri=https%3A%2F%2Fwww.google.com
flutter dart https uri
1个回答
-1
投票

您提供给该功能的所有内容都经过了urlencode编码,因为HTTP。在您的方案中使用它之前,似乎需要对其进行urldecode。这应该有助于https://stackoverflow.com/a/17407240/679553

© www.soinside.com 2019 - 2024. All rights reserved.