update
This commit is contained in:
@@ -5,6 +5,8 @@ import 'dart:io';
|
|||||||
class HostAndPort {
|
class HostAndPort {
|
||||||
String host;
|
String host;
|
||||||
int port;
|
int port;
|
||||||
|
|
||||||
|
HostAndPort({this.host, this.port});
|
||||||
}
|
}
|
||||||
|
|
||||||
class ManageConfig {
|
class ManageConfig {
|
||||||
@@ -24,9 +26,29 @@ class ProxyConfig {
|
|||||||
|
|
||||||
ProxyConfig parseProxyConfig(String config) {
|
ProxyConfig parseProxyConfig(String config) {
|
||||||
final jsonConfig = json.decode(config);
|
final jsonConfig = json.decode(config);
|
||||||
|
|
||||||
|
final managementConfig = jsonConfig['managementConfig'];
|
||||||
|
print(managementConfig);
|
||||||
|
|
||||||
|
// print(jsonConfig);
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<ProxyConfig> loadProxyConfig(String configFile/*, {List<String> files} ?? */) async {
|
HostAndPort parseHostAndPort(String hnp) {
|
||||||
|
final indexOfC = hnp.indexOf(":");
|
||||||
|
if (indexOfC < 0) {
|
||||||
|
throw 'Missing port: ' + hnp;
|
||||||
|
}
|
||||||
|
var host = hnp.substring(0, indexOfC);
|
||||||
|
final port = int.parse(hnp.substring(indexOfC + 1));
|
||||||
|
if (host.isEmpty) {
|
||||||
|
host = "0.0.0.0";
|
||||||
|
}
|
||||||
|
return HostAndPort(host: host, port: port);
|
||||||
|
}
|
||||||
|
|
||||||
|
Future<ProxyConfig> loadProxyConfig(String configFile
|
||||||
|
/*, {List<String> files} ?? */) async {
|
||||||
final configFn = File(configFile);
|
final configFn = File(configFile);
|
||||||
if (!await configFn.exists()) {
|
if (!await configFn.exists()) {
|
||||||
throw 'Config file not found: ' + configFile;
|
throw 'Config file not found: ' + configFile;
|
||||||
|
|||||||
@@ -8,6 +8,26 @@ void main(List<String> arguments) {
|
|||||||
final targetHost = "";
|
final targetHost = "";
|
||||||
final targetPort = 443;
|
final targetPort = 443;
|
||||||
|
|
||||||
|
parseProxyConfig('''{
|
||||||
|
"managementConfig": { "listen": "127.0.0.1:8888" },
|
||||||
|
"tcpListens": [
|
||||||
|
{
|
||||||
|
"listen": ":8443",
|
||||||
|
"backend": "101.132.122.240:443",
|
||||||
|
"allowIps": ["127.0.0.1"]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}''');
|
||||||
|
parseProxyConfig('''{
|
||||||
|
"tcpListens": [
|
||||||
|
{
|
||||||
|
"listen": ":8443",
|
||||||
|
"backend": "101.132.122.240:443",
|
||||||
|
"allowIps": ["127.0.0.1"]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}''');
|
||||||
|
|
||||||
// TODO ...
|
// TODO ...
|
||||||
print('Hello world!');
|
print('Hello world!');
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user