我希望将API令牌放在本地文件中,这样它就不会在源代码中显示。
var apiToken = File('API_TOKEN').readAsStringSync();但这个电话失败了..。
[VERBOSE-2:ui_dart_state.cc(198)] Unhandled Exception: FileSystemException: Cannot open file, path = 'API_TOKEN' (OS Error: No such file or directory, errno = 2)
#0 _File.throwIfError (dart:io/file_impl.dart:635:7)
#1 _File.openSync (dart:io/file_impl.dart:479:5)
#2 _File.readAsBytesSync (dart:io/file_impl.dart:539:18)
#3 _File.readAsStringSync (dart:io/file_impl.dart:584:18)
#4 apiToken (package:araki/main.dart:17:40)
#5 apiToken (package:araki/main.dart)
#6 main (package:araki/main.dart:21:25)
...API_TOKEN是我项目的基础。我试着浏览当前的工作目录,它看起来就像我的硬盘的根!我不能把文件放在那里..。
在本地文件中引用配置的最佳实践是什么?
发布于 2022-10-14 14:36:16
根据建议,我创建了一个单独的类SplitApiConfig.dart
class SplitApiConfig {
static const String apiToken = '<my api token here>';
}然后,我在我的主应用程序中导入了这个文件。
import 'splitApiToken.dart';我将文件放在与我的main.dart相同的目录中。
现在我可以从外部文件加载令牌了..。
final Splitio _split = Splitio(SplitApiConfig.apiToken, 'key', configuration: configurationOptions);通过引用SplitApiConfig.apiToken
这并没有完全解决我的问题。我想用不属于编译的令牌引用一个外部文件。现在,如果缺少SplitApiConfig,我将得到编译错误。因此,文件必须被签入,我必须记住没有活动的API令牌。
如果有人阅读这篇文章有后续,我仍然感兴趣的是如何找到和读取一个外部文件的颤栗。
https://stackoverflow.com/questions/73978168
复制相似问题