① js 如何判斷是非同步請求還是普通請求
這是根據請求時的參數來決定的啊,如果async為true就是非同步請求,為false就是同步請求。也就是說,是否非同步請求是由前端決定的,後台程序是不作區分一視同仁處理的。前端如果是以同步方式發出請求,它就會阻塞程序,等待後台返回數據再繼續運行;而非同步方式的話,就會立刻返回,繼續執行其他代碼,當後台返回數據時再以回調函數的形式進行處理。既然同步非同步是由前端決定的,那麼前端的js自然就知道如何來處理這個請求結果啦。
② JS 要發起100個非同步請求提交數據,有沒有方案能分批次提交,比如每次處理5條,再發起下一批
用一個全局變數來統計正在發起的請求數量,比如說第一批發起五個非同步請求,這個變數就設為5,然後在每個請求的回調函數中不管成功與否均把這個變數-1,如果變數為0,就說明5個請求均調用完畢了,這樣就可以繼續發起下一批5個請求,並把變數重新設為5……以此類推,直到全部完成
③ java後端怎麼接收前端的非同步請求
前端提交
POST /api/test HTTP/1.1
Host: 192.168.135.69:81
Connection: keep-alive
Content-Length: 18
Origin: http://192.168.135.69:81
User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1
Content-Type: application/x-www-form-urlencoded
Accept: */*
Referer: http://192.168.135.69:81/
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
數據類型
{"phone":"222222"}
後台代碼
@At
@Ok("json")
@Filters
@POST
@AdaptBy(type= JsonAdaptor.class)
public Object test(@Param("..") NutMap nutMap, HttpServletRequest req) {undefined
System.out.println("nutMap::" + nutMap);
System.out.println("longin ::" + req);
return Result.success("system.success");
}
報錯信息
2019-01-05 20:02:20,560 org.nutz.ioc.loader.combo.ComboIocLoader.printFoundIocBean(ComboIocLoader.java:226) DEBUG - Found IocObject(portalGlobalsNavService) in AnnotationIocLoader(packages=[com.yunqi])
2019-01-05 20:02:20,560 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:223) DEBUG - >> Make...'portalGlobalsNavService'
2019-01-05 20:02:20,560 org.nutz.ioc.impl.ScopeContext.save(ScopeContext.java:65) DEBUG - Save object 'portalGlobalsNavService' to [app]
2019-01-05 20:02:20,560 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get ''<>
2019-01-05 20:02:20,560 org.nutz.ioc.aop.impl.DefaultMirrorFactory.getMirror(DefaultMirrorFactory.java:76) DEBUG - Load class com.yunqi.moles.service.portal.PortalGlobalsNavService without AOP
2019-01-05 20:02:20,560 org.nutz.ioc.impl.NutIoc.get(NutIoc.java:166) DEBUG - Get ''<>
2019-01-05 20:02:20,561 org.nutz.service.EntityService.(EntityService.java:41) DEBUG - Get TypeParams for self : com.yunqi.moles.models.portal.Portal_Globals_navnutMap::null
longin ::org.apache.shiro.web.servlet.ShiroHttpServletRequest@334e3d74
2019-01-05 20:02:20,572 com.yunqi.common.processor.LogTimeProcessor.process(LogTimeProcessor.java:24) DEBUG - [POST]URI=/app/test 60ms
————————————————
版權聲明:本文為CSDN博主「weixin_39657249」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/weixin_39657249/article/details/114925997