一个web请求的返回是什么时候执行的?
java的开发,按照我的理解,response返回代码执行完了应该就能返回给页面了。但是现在碰到个问题,在response方法后又写了与第三方交互的代码,发现第三方交互没有返回结果的时候前台页面也会一直等待,response没有返回给页面,是什么原因?一定要一个方法全部执行完才会返回?还是用httpclient与第三方交互方法比较特殊?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
一次请求只有当程序执行完成了,才会返回给 WEB 服务器输出页面,你文中提到的“发现第三方交互没有返回结果”导致响应延迟,那么这个耗时的处理可以做成异步的,如放队列,或 go 里面的协程去处理,否则只能同步执行代码,执行完了才有响应。
这个是服务器返回完成状态,才会结束.
比如:debug的时候,跳到某处断点,如果你不点继续执行(绿色三角按钮),两分钟后也还在加载,白页.
我们上个WEB项目就出现了一个相关的BUG:如果图片找不到,会卡住十几秒.页面图片有图片找不到就等吧....
做成异步的啊,程序未执行完成吧,像连接超时的话都会很浪费交互时间的