V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  iX8NEGGn  ›  全部回复第 3 页 / 共 16 页
回复总数  306
1  2  3  4  5  6  7  8  9  10 ... 16  
174 天前
回复了 brader 创建的主题 问与答 快递收件人信息问题
是的,莫名其妙,怀疑快递那里有自己的数据库,我之前一直用另一个名字,后来改了,现在购物软件和快递包装上显示的都是现在的名字,但是快递员那里显示的是之前的名字。
175 天前
回复了 tuoniaoguoce 创建的主题 生活 洗衣机可以洗鞋吗?
对洗衣机没损坏,对鞋有损坏,得买那些动力不那么足的洗鞋机。
175 天前
回复了 129duckflew 创建的主题 Windows WakeOnLan 开机对休眠状态无效
#7 ++,我也是开着休眠,照样可以唤醒。
是的,你设计的 API (函数、或者 HTTP 接口)抛出的异常,应该面向你的用户(调用方)来设计,而不是根据你内部实现由其他函数决定。内部实现的其他函数抛出的异常,你函数内能处理的就处理掉,能转换的就转换成你调用方关心的,最后不能处理的才往上抛。
我好像看错了,你说 API 文档是提供给开发人员的类文档,我还以为是对接 SDK 之类的网络接口文档。

你想说的是如何给每个方法生成运行时异常说明?这是靠规范来达到的,每一个方法都有义务对它抛出的异常进行文档声明,然后上层调用时要进行捕获、转换或继续往上抛,这一层又有义务对它抛出的异常进行声明。
每一层 catch 到异常,能处理的处理,不能处理一般会对异常进行转换后才往上抛,而不是无脑的直接一直往上抛,最后抛给用户一个非常底层的异常。

因为同一个底层异常,对于不同上层来说含义可能是不一样的,最终给到用户的异常,应只是用户关心的异常,API 文档中总结出来的错误码只是用户关心的错误码。

比如登录接口,你应该只告诉用户账户不存在、密码错误等异常,对于什么数据库连接失败、各种工具类抛出的异常用户不关心,你应该将它们全部转换成一个“服务器异常”,而不是告诉用户细节:数据库连接失败异常、XXX 工具类异常。

你的误区在于认为直接给每一个异常一个错误码,然后一条路抛到黑,那 API 文档中就要总结出各种各样的异常。
188 天前
回复了 boseqc35 创建的主题 问与答 拖地机器人推荐
云鲸逍遥 001 ,这些扫地机器人要是能刷机或自定义算法好了
192 天前
回复了 hekouwang123 创建的主题 生活 程序员的钢琴之旅
买跨界钢琴,或买真钢安装静音系统,扰民问题就解决了。
我真的超喜欢这个,用了几年了:

https://s21.ax1x.com/2024/06/13/pkaf2an.jpg

一档微风,开一整天都不会觉得皮肤不舒服,二档风力够,热的时候也能应付,USB 供电,我两万毫安充电宝可以开很多天。
198 天前
回复了 MeetTheFuture 创建的主题 iOS App 没有联网权限还能继续使用网络
老生常谈,小火煎 -> 设置 -> 代理 -> 代理地址:不要选 127.0.0.1
198 天前
回复了 bigbigeggs 创建的主题 Web Dev 接口防重放 是不是存粹的脱了裤子放屁?
@jinxjhin 我在 #47 也说了网络层防重放是 HTTP 时代的产物,至于为什么现在的大厂还在用,我也想知道,也有可能只是历史遗留做法而已。
198 天前
回复了 bigbigeggs 创建的主题 Web Dev 接口防重放 是不是存粹的脱了裤子放屁?
至于 OP 说的 “我真不相信,哪一家,真的在项目中写了防重放的实现逻辑。”

我随便找了几个大厂的文档,签名中带有时间或者随机数的大都是用来放重放的:

阿里: https://help.aliyun.com/zh/sdk/product-overview/rpc-mechanism
SignatureNonce 参数的描述:“签名唯一随机数。用于防止网络重放攻击,建议您每一次请求都使用不同的随机数,随机数位数无限制。”

腾讯: https://cloud.tencent.com/document/product/551/15615
Nonce 参数的描述:“随机正整数,与 Timestamp 联合起来,用于防止重放攻击。”

火山: https://www.volcengine.com/docs/6469/93892
t 参数的描述:“来自火山引擎的事件通知请求默认过期时间是 10 分钟,如果一条事件请求通知中的 t 值所指定的时间已经过期,则可以判定此条事件请求通知无效,通过此方法可以防止网络重放攻击。”
198 天前
回复了 bigbigeggs 创建的主题 Web Dev 接口防重放 是不是存粹的脱了裤子放屁?
你把“重放”理解错了,计算机网络和网络安全相关书籍中都提到“重放攻击”,防重放是 HTTP 时代的一种安全措施,它是网络层的东西不是应用层,防的网络层中间人抓包后原封不动把包发给服务端。

不做防重放即使加密通信也没用,但 HTTPS 自带加密和防重放功能,如果现在还使用原先的防重放做法,那它的主要用作就是提高反扒的难度。
201 天前
回复了 iX8NEGGn 创建的主题 问与答 求推荐聚合对接各家大模型接口的项目
@neptuno 感谢,我去看一下
202 天前
回复了 hylqs 创建的主题 问与答 床头厚 12cm,怎么夹 iPad
@povsister 十多块钱多关节的(类似于显示器支架)随便夹,我用来夹 surface 平板,好用得很,量了一下我买的只能夹在 7.5 厘米厚物体上。
Fiddler 给我的感觉就是乱糟糟的,Charles 除了不支持脚本和略微卡顿,其他的就很完美。
主板没有看门狗嘛
212 天前
回复了 yuhu96 创建的主题 Python 机器上的 Python 解释器装的太多
我想问下,2024 年了,python 各种工具创建的虚拟环境可以移动了吗,之前的移动后一些库会用不了,还得重新装。
213 天前
回复了 iyue56 创建的主题 Apple 关于 ios 缓存视频导出方法
我在 16.5 系统试过,不用整机备份,imazing 也可以直接导出某应用数据
这根本就是俩回事。一个是:服务端是否应该保存明文密码;另一个是:是否在 https 下还要明文传输数据。请不要混淆。
1  2  3  4  5  6  7  8  9  10 ... 16  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5289 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 32ms · UTC 03:46 · PVG 11:46 · LAX 19:46 · JFK 22:46
Developed with CodeLauncher
♥ Do have faith in what you're doing.