V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  jinliming2  ›  全部回复第 23 页 / 共 55 页
回复总数  1100
1 ... 19  20  21  22  23  24  25  26  27  28 ... 55  
当年 Google 就是类似的手段,造成是“他们服务器不稳定”的假象,然后再过段时间就彻底 ban 了。
2021-03-02 00:29:54 +08:00
回复了 misakawaque 创建的主题 JavaScript JS 的函数和方法区别在哪里?
函数和方法看你描述的是啥,他们可以是同一个东西。
比如你写了 globalThis.foo = () => {}; 。那么 foo 就是被定义在全局环境下的一个函数,可以说 foo 是一个函数,也可以说 foo 是 globalThis 下的一个方法。foo() 就是调用 foo 这个“函数”,globalThis.foo() 就是调用 globalThis 下的 foo “方法”。
虽然本质上没有区别。
当你把它叫做“函数”的时候,一般是特指它自己本身;当你把它叫做“方法”的时候,一般特指它是属于某一个父级对象下的一个 function 类型的属性。
2021-03-02 00:10:53 +08:00
回复了 lasm 创建的主题 程序员 抵制跨站点隐私追踪库 supercookie
已经被浏览器封了吗? Chrome Canary 90.0.4430.8,亲测隐私模式两次 ID 不一样、访客模式两次 ID 也不一样。
网页未在正常模式中打开过,直接右键隐身模式打开,测试完第一次 ID 72 43 0C 25 AE 90,关掉窗口后(但没有退出浏览器),再次重新在隐身模式打开,测试第二次 ID 28 8E 96 EE BB 6D 。
然后开启 Chrome 右上角头像里的访客模式,测试第三次 ID ED 07 C8 AD BF A5 。关掉访客窗口后再次重新打开访客窗口,测试第四次 ID 2B E9 51 B5 87 43 。

Firefox Nightly 88.0a1 ,开启了 Never remember history (火狐我主要做测试用,所以日常开着这个,干净)。未进入隐私模式,在正常模式下第一次测试 ID EC 1B 88 42 18 B1,关闭浏览器重新打开,第二次测试 ID D1 9A EB 51 D0 0C 。
2021-03-01 19:43:38 +08:00
回复了 uiosun 创建的主题 程序员 HTTP 服务可以防跨域,但小程序怎么办呢?
CROS 是什么鬼……不是 CORS 么……😂
CORS 只能防止第三方不能再浏览器上直接请求你的接口,但不能防止第三方服务访问你的接口。
防止第三方服务访问很困难,因为你的所有限制都可以通过第三方反代解除。
加 token 、加校验都只能是提升那么一丢丢门槛而已。
2021-03-01 00:29:44 +08:00
回复了 dreampython 创建的主题 程序员 如何解决 gitlab 中 mr 互相追加 commit 的问题
一楼说的对,如果独立,则每次都应该从 master 的最新代码切出分支来开发,而不是基于上一次提交。

如果不独立,新提交依赖旧提交,那此时旧提交还在 review 过程中,如果代码不合格,出现 require change,那么此时代码可能还会发生变化,后续的提交如果基于这个提交来的话就会出现问题。所以新提交的 MR 应当标记为 WIP,等待旧提交完成 review 后确定 merge 之后,再 rebase 到最新代码解决冲突,然后再去掉 WIP 标记开始 review 。
2021-02-28 23:40:55 +08:00
回复了 wellhome 创建的主题 程序员 用 doker 发布程序的正确打开方式
@wellhome Dockerfile 只有第一次会从头打包,后续发布更新都不会从头打包,只会从变化的位置开始打包,之前没有变化的 Dockerfile 语句都会复用。比如:

FROM xxxxxx # 这一句每次都一样,直接复用
RUN apt-get update && apt install -y xxx # 这一句也是每次都一样,直接复用
COPY . . # 这一句开始,因为拷入的代码文件变了,所以从这一行开始后面的全部重新构建
RUN build ... # 从上一句开始从新构建

所以一般来说,安装依赖之类的语句尽可能提前,这样后续打包的时候就不会重新构建了。

实际上你可以简单理解成你的 Dockerfile 里每一条语句都是一个 commit (不正确,部分语句是会合并的),相互之间就是父子关系。具体表现在你 docker pull / push 的时候显示的那个进度条的个数。你每次构建的时候,如果这条语句前面的环境都是一样的话,并且当前这一层没有任何变化的话,那么这一条语句就不会重新执行,而是直接复用之前的构建结果。这样一来你会发现,在重新 docker push 的时候,会提示你部分层已经在服务器上存在了,只会 push 变动的部分。
2021-02-28 23:30:37 +08:00
回复了 wellhome 创建的主题 程序员 用 doker 发布程序的正确打开方式
@fannas 配置 config 不应该设置为运行时从环境变量里读吗?或者设置为 mount point 在运行时指定导入进去?
2021-02-28 00:51:13 +08:00
回复了 aijialefu 创建的主题 程序员 自建 cname 服务? n 个域名解析到一台 ip 变化的服务器上
域名 A1 、A2 直接用 cname 解析到 B,B 用 ddns 解析到一台 ip 经常变化的服务器上。
这就已经满足你的需求了。不需要自建 CNAME 服务,也不需要 nginx 。
@defunct9 emmmm,你这个情况的话,如果不给 app 权限,那么相当于所有第三方客户端都是不支持的啊。感觉已经无解了。
@fox233 是的,最新版本支持了世纪互联。创建配置的时候区域写 cn 就是了,详情可以参考文档。
rclone 试过吗?自带支持 one drive,可以配置世纪互联版本的 one drive 。
默认命令行,提供实验版的 Web GUI
2021-02-21 13:13:48 +08:00
回复了 wxsm 创建的主题 程序员 useEffect 为什么不能支持 async function?
如果你在 useEffect 里写了一个 async 函数:
useEffect(async () => {
await waitFor10Seconds();
return () => cleaningUp();
}, [dep]);
这样,在这个 async 函数中等待了 10 秒才会返回,而这之间你触发了 dep 的更新,请问现在的执行逻辑会怎样?
是整个组件卡着不动,等这个 Promise resolve 之后再去执行它的 cleaning up 函数吗?还是说这个 cleaning up 就不执行了?还是说把这个 cleaning up 函数加入队列,之后可能会乱序执行?或者排序后顺序执行?有时这个 Promise 也许永远不会 resolve 。
这样就会产生开发过程中的歧义。
默认约定返回 promise 的话就不支持 cleaning up ?但这就和 useEffect 本身的设计理念产生了冲突,本身的概念很简单,这又加了一种特例情况。

按照我的习惯的话,这种异步任务不会写到 useEffect 里,而是写道外面,useEffect 中只是去调用这个函数:
const fetchData = async () => {};
useEffect(() => {
fetchData();
return () => abortFetch();
}, [dep]);

另外 Promise 未处理的警告,我这里默认是没有这个警告的,我也不会去配置这个警告。
我觉得这是很正常的事情,Promise 作为一个返回值,它与其他的 return 1 、return "1" 有什么区别?在没有必要的情况下,其他的返回值你可以不接收、不处理,那为啥在没有必要处理的时候,要特别去关注 Promise 的处理呢?仅仅因为它是个“return new Promise()”?
2021-02-21 12:45:38 +08:00
回复了 UnknownSky 创建的主题 Windows Win10 LTSC 新版今年下半年释出!
我以为会叫 LTSD😂(以前的 LTS B 、LTS C )……
现在用的 LTSC 的 N 版,也就是欧洲特供的版本,商店啥的都没有的版本,很干净。
不知道还会不会有 32 位的版本了,听说微软要砍掉 32 位系统?
我主要是 Linux,虚拟机里装个 LTSC N 用微信、会议啥的,考虑到这些软件都是 32 位的,所以装 32 位版本资源消耗会少一些。
2021-02-21 12:39:49 +08:00
回复了 cathedrel 创建的主题 Linux Linux 系统里有没有类似 windows 系统上的 Proxifier 的程序??
我的配置:ip 规则列表+nftables+Transparent proxy
1:ip 规则列表 ip.txt ,这个使用脚本生成就行了,相当于白名单 ip 列表,格式这样:
define WLIP = {
10.0.0.0/8,
192.168.0.0/16,
......
}
2:nftables 规则文件:
# 导入规则文件
include "/opt/ip.txt"
table ip proxy {
chain output {
type nat hook output priority 0; policy accept;
ip daddr $WLIP return
ip protocol tcp redirect to 1081
}
}
2021-02-20 11:15:27 +08:00
回复了 coloz 创建的主题 程序员 哪家的免费验证码服务比较好,求推荐
和 recaptcha 一样的 hcaptcha,就是 cloudflare 在用的那个,不仅免费,还给你钱(当然很少)。国内可用。

另外,也可以使用国内的 极验,之前用过还行。(不知道国内评价怎么样)
2021-02-18 16:26:14 +08:00
回复了 pancl 创建的主题 奇思妙想 怎么知道自己打呼或磨牙?
开手机录音,录一晚上占不了多少空间的吧,然后把录音文件波形显示出来( ios 自带的录音就可以,安卓可不可以不知道,实在不可以,就导出到电脑上用 AU 看),就能快速发现有没有了吧?
@Themyth 这个应该只能用 websocket 去实现私有协议,浏览器下限制只能建立 HTTP 连接的。
不过如果采用这种方案的话,那最简单的,国外那台主机提供的 html 里的资源地址全部指向国内的这台机器就行,用 HTTP 头解决好跨域问题就可以了。
看了一下,不仅没有 Excel 的文件头,就是文件内容都连 Excel 的影子都没有
2021-02-15 11:44:11 +08:00
回复了 zzw1998 创建的主题 程序员 Ant Design 没了
@Mithril eCharts 不是移到 apache 仓库下了吗……
不过,ant design 在国内的开源项目里,也算是维护的比较积极的了,相比 vue 来说……
1 ... 19  20  21  22  23  24  25  26  27  28 ... 55  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   869 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 37ms · UTC 20:14 · PVG 04:14 · LAX 13:14 · JFK 16:14
Developed with CodeLauncher
♥ Do have faith in what you're doing.