如何使用 Dart 从 url 中提取端点

Amr*_*Amr 1 string parsing endpoint dart flutter

我的应用程序扫描二维码以获取如下网址:http://website/api/123-5678-34234

我正在寻找优雅的解决方案来提取端点(123-5678-34234),而无需迭代整个网址字符

mag*_*n94 6

你可以这样做:

final a = Uri.parse('http://website/api/123-5678-34234');
print(a.path);
Run Code Online (Sandbox Code Playgroud)

输出将是您的 url 的路径:

/api/123-5678-34234
Run Code Online (Sandbox Code Playgroud)

编辑 由于您只需要路径的最后一部分,您可以利用 的pathSegments Uri属性:

在这种情况下a.pathSegments会导致

["api", "123-5678-34234"]
Run Code Online (Sandbox Code Playgroud)

所以你可以选择a.pathSegments.last。我使用的是最后一个,但它是一个数组,因此您可以根据需要访问它。选择最后一个将返回最右边的段(最后一个)