2016-01-13 85 views
0

我正在创建一个小型web应用程序。Ajax xmlhttprequest超时

在应用程序中的一个网页中,页面的一部分使用ajax进行更新。 Ajax将从服务器上的java servlet中检索数据。

我是新来的ajax(和JavaScript),我不明白一些进出的东西。

我是否需要使用xmlhttprequest.timeout来防止服务器花费太长时间来发送响应?我知道一些浏览器不支持这个,所以它是不可复制的?

ajax在等待服务器的响应时是否消耗数据?我问这是为了防止服务器花费太长时间发送响应,并且用户正在使用具有数据限额限制的移动设备?

我希望在这个

编辑的帮助:我使用的是后端服务器上的Tomcat。如果请求/响应需要很长时间来处理,我该如何告诉tomcat发送408(服务器超时)?我知道我不能在server.XML中做到这一点,因为连接超时只有在服务器没有收到请求或者我错了吗?

+0

欢迎来到SO。请访问[帮助],看看在这里要问什么和如何问。建议:发布努力和代码 – mplungjan

+0

,也可以管理你的后端...在php中定义一个时间,如果过程仍然没有完成后,只需返回一些东西..并要求用户再试一次... –

+0

如果你可以使用jQuery(推荐使用跨浏览器Ajax时),看看http://stackoverflow.com/questions/5225597/set-timeout-for-ajax-jquery – mplungjan

回答

1

我是否需要使用xmlhttprequest.timeout来防止服务器发送响应时间过长?

否浏览器/网络堆栈的默认超时时间通常就足够了。

ajax在等待服务器的响应时是否消耗数据?

这只是一个HTTP请求和响应。它不会比其他任何请求带宽更多。如果由于服务器需要时间进行响应而没有传输数据,则不会传输数据。

+0

谢谢你的帮助 – DannyR