色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

java - web端百度網盤的一個操作為什么要分兩次請求服務器, 有什么好處嗎

瀏覽:122日期:2022-09-28 14:35:23

問題描述

以 文件重命名 為例:

當完成重命名操作提交會到這個地址 https://pan.baidu.com/api/filemanager

返回如下結果

{ 'errno': 0, 'info': [], 'request_id': 88137407060055336, 'taskid': 307843054247316}

可以聯想到在server端建立了一個task, 并返回了taskid讓客戶端后續取狀態來更新ui

客戶端輪訓服務器的接口 https://pan.baidu.com/share/taskquery 來獲取狀態, 1秒一次請求, 服務器端返回結果如下: 分幾種情況我總結了一下

#進行中的返回值{ 'errno': 0, 'request_id': 88137707954758994, 'task_errno': 0, 'status': 'pending'}#進行中{ 'errno': 0, 'request_id': 88137707954758994, 'task_errno': 0, 'status': 'running'}#操作成功的返回值{ 'errno': 0, 'request_id': 88138584419582326, 'task_errno': 0, 'status': 'success', 'list': [ { 'from': '/test1/我的照片', 'to': '/test1/我的照片2' } ], 'total': 1}

當 status 為success時候, 則輪詢結束, 更新UI元素

問題: 直接訪問重命名接口不行嗎? 為什么要這么設計, 好處是什么?

問題解答

回答1:

你已經說的很清楚了啊,還有什么不明白的?

第一次就是向服務器發起改名申請。服務器就開始任務。后面的輪詢都是在查詢任務是否完成,完成了前端做相應操作,萬一失敗了,前端還要做回滾操作。

回答2:

猜一下原因:極端情況下, 操作可能會耗時很久, 無法立即返回. 在操作完成的時候, socket鏈接可能已經斷開, 無法獲取到最終的結果. 設計成任務隊列的方式, 能保證客戶端獲取到最終的結果.

回答3:

除了上面的一些考慮,可能還有一個很重要的原因,那就是并發壓力。做成異步,能很好解決并發

標簽: 百度
主站蜘蛛池模板: 失禁h啪肉尿出来高h | 亚洲国产成人精品一区91 | 欧美激情亚洲 | 久久伊人网站 | 欧美日韩中文字幕在线观看 | 国产亚洲精品久久久久久午夜 | 亚洲精品黄色 | 日本精品久久久久中文字幕 1 | 操操综合| 欧美日韩亚洲另类 | 一区二区三区免费视频观看 | 亚洲黄色美女视频 | 俄罗斯a级毛片 | 91情侣高清精品国产 | 国产精品成人久久久久久久 | 波多野结衣中文在线播放 | 91欧美一区二区三区综合在线 | 欧美老熟妇bbbb毛片 | 亚洲在线观看 | 美女张开大腿让男人桶 | 欧美一线免费http | 久久视精品 | 很黄很色的摸下面的视频 | 日韩毛片欧美一级国产毛片 | 91久久国产露脸精品 | 一区二区三区精品国产欧美 | 91香蕉国产线在线观看免费 | 国产a一级毛片含羞草传媒 国产a自拍 | 一区二区三区在线看 | 全免费毛片在线播放 | 日本国产一区二区三区 | 久揄揄鲁一二三四区高清在线 | 久久99热精品免费观看k影院 | 国产日韩美国成人 | 国产a一级 | 综合九九| 日韩a毛片免费全部播放完整 | 欧美一级视频高清片 | 国产亚洲精品高清在线 | 久久一本精品久久精品66 | 成人免费网址在线 |