V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  apple2026  ›  全部回复第 7 页 / 共 18 页
回复总数  343
1 ... 3  4  5  6  7  8  9  10  11  12 ... 18  
2022 年 5 月 17 日
回复了 apple2026 创建的主题 音乐 Ciel 音乐收集系列:不放弃~让人斗志昂扬的歌曲。
@cat9life ciel 是我的昵称
2022 年 5 月 16 日
回复了 ranxi 创建的主题 程序员 各位,在工作或生活上有没有一直在坚持的好习惯
多邻国坚持学习 512 天
开心词场坚持背单词 237 天
2022 年 5 月 15 日
回复了 zhengxiexie 创建的主题 V2EX v2ex 图片上传终极解决方法
2022 年 5 月 15 日
回复了 hellomojo777 创建的主题 MacBook Pro 大家的 Mac 用了多少年了呢
@kiwi95 新换的什么牌子的电脑呢?什么型号?体验好吗?我也想入手一台,性价比好的,装 Linux 系统。
2022 年 5 月 13 日
回复了 Joker123456789 创建的主题 Java 关于 Java 很啰嗦的问题
@agileago
```
func fetchData2(ctx context.Context, url string) (*gjson.Json, error) {
d, err := gclient.New().Timeout(time.Second*3).Retry(5, time.Second*3).Get(ctx, url) // 重试 5 次,每次间隔 3 秒
if err != nil {
glog.Error(ctx, err)
return nil, err
}
json, err := gjson.DecodeToJson(d.ReadAll())
if err != nil {
return nil, err
}
switch json.Get("code").Int() {
case 0, 1:
return json.GetJson("data"), nil
default:
return nil, errors.New("获取数据失败,请稍后重试")
}
}
```
才发现,框架自带了重试机制。。
2022 年 5 月 13 日
回复了 Joker123456789 创建的主题 Java 关于 Java 很啰嗦的问题
@sciel 会先判断 if(isRetry),应该不会死循环,感觉还是不太直观
2022 年 5 月 13 日
回复了 Joker123456789 创建的主题 Java 关于 Java 很啰嗦的问题
@agileago 仔细看一下 request 方法定义的 i ,和 isRetry,不太能直接看出其用意吧,

while 里面 else 每次都给 i 重新赋值 5 可能会造成死循环

41 行 res.code res 也可能会 undefined ,应该先判断一下 res 哇

getData 里面 没有实际发出 http 请求。。
2022 年 5 月 13 日
回复了 Joker123456789 创建的主题 Java 关于 Java 很啰嗦的问题
@agileago 感觉还是有点繁琐
2022 年 5 月 13 日
回复了 Joker123456789 创建的主题 Java 关于 Java 很啰嗦的问题
@Seanfuck 可以写一个,从来没用过 php,如果不错,后面去探索一下,我知道一个很厉害的大神也是用 php
2022 年 5 月 12 日
回复了 Joker123456789 创建的主题 Java 关于 Java 很啰嗦的问题
@Jwyt 我想体现一下 goto 。。失败
2022 年 5 月 12 日
回复了 Joker123456789 创建的主题 Java 关于 Java 很啰嗦的问题
我想看一下,java ,nodejs ,python ,php 实现下面的这个方法,可以吗 ^_^
```
// 获取接口数据 接口超时 3 秒,超时后重试 5 次 , 成功则获取返回状态为 0 和 1 时的数据
/* 接口返回数据格式
{
"code":0 // -1 失败 0 成功 1 预警
"msg":""
"data":{}
}
*/

func (s *rss) fetchData(ctx context.Context, url string) (*gjson.Json, error) {
num, max := 0, 5
retry:
d, err := gclient.New().Timeout(time.Second*3).Get(ctx, url)
if err != nil {
num++
if num > max {
return nil, errors.New(fmt.Sprintf("获取数据失败,已重试%d 次,请稍后重试", max))
}
glog.Infof(ctx, "获取失败,重试中...%d", num)
goto retry
}
json, err := gjson.DecodeToJson(d.ReadAll())
if err != nil {
return nil, err
}
switch json.Get("code").Int() {
case 0, 1:
return json.GetJson("data"), nil
default:
return nil, errors.New("获取数据失败,请稍后重试")
}
}
```
@yeeli 发了,看一会有回复不,
@SenLief 是国区的,国外的不知道,我用的房产证试试。
@Samuelcc 好像打不通
谢谢,看什么时候能处理。。
2022 年 5 月 12 日
回复了 Livid 创建的主题 Flutter Superlist 在 Google I/O 2022 上的演示
动画效果不错,h5 好实现么?
2022 年 5 月 11 日
回复了 lyang 创建的主题 Django django 定时触发任务
1 ... 3  4  5  6  7  8  9  10  11  12 ... 18  
关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   2444 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 49ms · UTC 16:06 · PVG 00:06 · LAX 09:06 · JFK 12:06
♥ Do have faith in what you're doing.