Outline解析SS URL

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Outline解析SS URL相关的知识,希望对你有一定的参考价值。

参考技术A Outline配置好了以后会提供一个原生SS一样的URL,包含服务器IP、端口和其它必需的加密信息,把它复制到其它设备的SS客户端或Outline客户端就可以连接到这台服务器了。

可以从这个URL中看到服务器IP是17.168.1.2,端口是5228,但是加密方式和密码则隐藏在前面的那个加密的字符串里。

是可以通过解析得到加密方式和密码

1 直接在Termianl中进行解密:

2

以下面这个ss链接为例,

先把后面那个后缀/?outline=1去掉(/?后面部分其实是无用的注释),变成

然后运行

TODO:转换为clash可用

参考链接:
https://apqx.me/post/original/2019/02/09/%E4%BD%BF%E7%94%A8Outline.html
https://www.wkwkk.com/articles/355fd562a152f72d.html

将日期解析为 yyyy-MM-dd HH:mm:ss 格式 [重复]

【中文标题】将日期解析为 yyyy-MM-dd HH:mm:ss 格式 [重复]【英文标题】:Parse date to yyyy-MM-dd HH:mm:ss format [duplicate] 【发布时间】:2017-09-06 10:33:37 【问题描述】:

我想使用 LocalDateTime.parse() 方法解析日期,日期格式为 yyyy-MM-dd HH:mm:ss,但我实际得到的是格式为 yyyy-MM-ddTHH:mm:ss 的日期.我不需要那个“T”。请看下面的代码

LocalDateTime.parse("2016-10-31 23:59:59", DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));

我得到的结果是 2016-10-31T23:59:59。看到那个'T'。 'T' 导致问题,因此我无法将其保存到我的数据库中。我尝试将值保留在datetime 类型的列中;我收到错误消息 - org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback; bad SQL grammar

查看有效的值

VALUES('US','101','test','firstname','middleName','preferedN‌​ame','lastName',
       '198‌​9-01-01','M',1,'1122‌​1123','test@test.com‌​','address1','addres‌​s2','Bloomingdale','‌​IL','US','689850',
       1,‌​1,'11111','2016-12-3‌​1 23:59:59')

(最后一个值中没有T

这不起作用:

VALUES('US','101','test','firstname','middleName','preferedN‌​ame','lastName',
       '198‌​9-01-01','M',1,'1122‌​1123','test@test.com‌​','address1','addres‌​s2','Bloomingdale','‌​IL','US','689850',
       1,‌​1,'11111','2016-12-3‌​1T23:59:59')

(最后一个值为T)。

【问题讨论】:

你看到的是日期的内部表示。因为Date 没有格式 列的类型是什么,如何尝试存储日期,错误信息是什么? 日期/时间对象 DO NOT 有格式化的概念,它们是从给定时间点开始的毫秒数的容器。这就是为什么有日期/时间格式化程序 - 我建议看看Parsing and Formatting trail 列的类型是 datetime ,我收到错误 - org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback;糟糕的 SQL 语法 所以显示相关代码。它与日期无关 【参考方案1】:

LocalDateTime 不存储为字符串,而是存储为对象。

你得到一个 "T" 因为 .toString() 方法默认返回 ISO 格式,如下所述: https://docs.oracle.com/javase/8/docs/api/java/time/LocalDateTime.html

toString

公共字符串 toString()

将此日期时间输出为字符串,例如 2007-12-03T10:15:30。

输出将是以下 ISO-8601 格式之一:

uuuu-MM-dd'T'HH:mm uuuu-MM-dd'T'HH:mm:ss uuuu-MM-dd'T'HH:mm:ss.SSS uuuu-MM-dd'T'HH:mm:ss.SSSSSS uuuu-MM-dd'T'HH:mm:ss.SSSSSSSSS

使用的格式将是输出完整值的最短格式 省略部分被暗示为零的时间。

使用 format 函数根据需要输出。

LocalDateTime d = LocalDateTime.parse("2016-10-31 23:59:59", DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));

System.out.println("toString: " + d.toString());
//toString: 2016-10-31T23:59:59                                                                                                                                                                                                                           
System.out.println("format:   " + d.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
//format:   2016-10-31 23:59:59  

【讨论】:

以上是关于Outline解析SS URL的主要内容,如果未能解决你的问题,请参考以下文章

UGUI源码解析——Outline

Unity中实现UI描边

将秒解析为 r 中的 mm.ss.00

将日期解析为 yyyy-MM-dd HH:mm:ss 格式 [重复]

dotnet OpenXML 形状的 Outline 的 LineWidth 线条轮廓粗细宽度的行为

为啥我无法解析这种日期格式 yyyy-MM-dd'T'HH:mm:ss.SSSZ?