Go html/template 过滤 script 里的注释?!

2020-03-08 20:40:40 +08:00
 zhshch

代码是这样的:

输出是这样的:

https 后面的 //被截没了?

我之前见过这个标准库过滤<!---->的注释,这 js 里的注释也会处理掉?还处理错了位置?

我肯定是跟这个库有什么误会。。。

2589 次点击
所在节点    Go 编程语言
15 条回复
Reficul
2020-03-08 21:53:33 +08:00
发个最小 Demo 的 Code 上来看看?
thefack
2020-03-08 21:56:27 +08:00
有点想笑。。
tealover007
2020-03-08 22:21:22 +08:00
试着\/\/转一下?
CEBBCAT
2020-03-08 22:22:10 +08:00
按理说不应该的,上个 demo+1
Mohanson
2020-03-08 22:26:54 +08:00
我的经验是, 当怀疑语言本身 /标准库 /操作系统 /计算机有 BUG 的时候, 99.9% 是自己的代码有 BUG...
loading
2020-03-08 22:27:05 +08:00
为啥要在 html 里直接写 js。
html 和 js 视乎是分开处理。
Yoock
2020-03-08 22:30:21 +08:00
字符串转义
reus
2020-03-08 23:28:11 +08:00
https://play.golang.org/p/2F-FbNXWSko 根本就不会。

几行代码就能验证的事情。你的判断是错误的。
reus
2020-03-08 23:38:07 +08:00
不过字符串外面的注释确实会过滤掉,可能旧版本有 bug 也不奇怪,升级到 1.14 试试
zhshch
2020-03-09 08:30:07 +08:00
@Reficul #1
@CEBBCAT #4 Code 上了

@tealover007 #3 输出结果变成 https:\/\/api.ip.sb/geoip 也不是预期

@loading #6 确实昨晚上分成两个文件规避了,但是这个现象依旧很困惑
Vegetable
2020-03-09 10:06:25 +08:00
你给出的 demo 无法复现
BlackBerry999
2020-03-09 11:23:11 +08:00
url 编码一下
palytoxin
2020-03-09 14:42:29 +08:00
你引入的 cdn 有没有被修改掉?
Reficul
2020-03-11 10:29:57 +08:00
直接调用 html/template 无法复现
noisywolf
2020-03-11 12:22:32 +08:00
你给出的 demo 无法复现

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/650994

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX