关于ChatGPT的Connected apps,当前你需要知道的
发表于
更新于
本文字数:
1k
阅读时长 ≈
2 分钟
通过富途玩美股
发表于
更新于
本文字数:
577
阅读时长 ≈
1 分钟
login shell
发表于
更新于
本文字数:
456
阅读时长 ≈
1 分钟
最近接到一个WebShell用户反馈,即debian系统-终端登陆发现没有加载~/.profile. 这里经过分析是底层开启的交互式非登陆Shell没有走登陆Shell导致。
登陆Shell
登陆Shell会加载 ~/.bash_profile, .profile,/etc/profile
文件,非登陆Shell不会加载这些,但会加载~/.bashrc
。
profile加载顺序
- /etc/profile:首先,Shell 会读取系统范围内的全局配置文件 /etc/profile。
-
~/.bash_profile, ~/.bash_login, 和 ~/.profile(按此顺序)
,Shell 会查找并尝试执行用户的个人配置文件。它首先检查 ~/.bash_profile,如果这个文件存在,则停止读取其他文件。如果 ~/.bash_profile 不存在,它会查找 ~/.bash_login。如果这个文件也不存在,最后会尝试读取 ~/.profile。
关于ChatGPT桌面版,当前你需要知道的
发表于
更新于
本文字数:
1.1k
阅读时长 ≈
2 分钟
Z-Library结合TG下载电子书
发表于
更新于
本文字数:
196
阅读时长 ≈
1 分钟
个人觉得Z-Library结合Telegram的下载体验是最舒服的。这里Mark下。
- 访问 https://singlelogin.re
- 如果没有账号就注册
- 访问失败的话,建议尝试代理
- 进入 https://singlelogin.re/z-access#telegram_bot_tab ,创建TG Bot
- 进入TG创建成功后,则可以直接在私有Bot上查询任何书籍,然后点击下载了。
需要注意每日下载额度有限。
Xbox远程游戏
发表于
更新于
本文字数:
297
阅读时长 ≈
1 分钟
用户上传图片实现自动审查
发表于
更新于
本文字数:
517
阅读时长 ≈
1 分钟
最近接到消息,项目做的上传图片功能被通知需要做下安全审核。在解该决问题后,这里Mark下。
当前我用的是腾讯云的COS- CDN,这里以此产品为例介绍下。
当前COS使用
图片当前上传是走的COS,存储后返回路径,COS我通过绑定域名走CDN供用户使用。
审查配置
- COS支持配置图片自动审查,由于我的COS还配置有其它的资源,因此这里我开启了图片自动审查的COS路径限制,比如/user-images的才开启审查。
- 由于我的图片上传功能之前就已上线,因此面临存量和新增的2部分图片如何处理
- 存量图片通过配置任务让COS再做下审查
- 新增图片我是通过COS- SDK,在上传后会自动触发审查
- 配置审查不合规后动作处理,这里考虑到用户图片可能是存在误判或者说当前标准过严,因此配置为审查违规后自动移动到指定目录,这样还有机会恢复。
- 由于配置审查是后置的,因此COS上传环境无感知会违规否,因此如果项目中想提示用户违规问题,还是需要自行调用审查接口或者配置审查回调接口。否则就会是上传成功不会提示违规,但实际访问404,原因是图片后置审查违规后被处理。
流写入文件时造成的文件内容被清空问题
发表于
更新于
本文字数:
6.8k
阅读时长 ≈
11 分钟
ssh2-sftp-client提供了put方法,可以传入可读流将数据持续写入远程文件。最近遇到问题是当写入流刚开始程序终端的话,会发现文件内容被清空。这里分析下原因
put方法中localSrc可以是可读流。remotePath即远程服务器中文件路径。
1 | async put(localSrc, remotePath, options) { |
根据远程文件路径,sftp创建了可写流,writeStreamOptions设置了可写流的一些配置。可读流不断读取写入SFTP的可写流中。
1 | _put(lPath, rPath, opts, addListeners = true) { |
parseInt
发表于
更新于
本文字数:
667
阅读时长 ≈
1 分钟
今天看到公司内部平台推送了一道关于parseInt的问题,发现结果出乎一聊,根本原因是对于parseInt执行理解不清晰,这里Mark下。
问题
1 | parseInt('0xf',16) |
解释
- parseInt第一个参数,会从首个非空格字符开始,对于非字符串会做ToString转换,因此parseInt(15,16)本质就是parseInt(‘15’,16)。
- parseInt(‘0xf’,16),JS识别字符串是16进制数字,radix也是16进制,因此直接解析为15。parseInt(‘0xf’)虽然没有传radix,但是根据字符串0x前缀还是识别为16进制因此还是15。