首頁 >後端開發 >php教程 >ajax由前端页面触发发起,反过来能实现吗?

ajax由前端页面触发发起,反过来能实现吗?

WBOY
WBOY原創
2016-06-06 20:06:061160瀏覽

如题,ajax都是由前端页面某个动作触发,然后到后台取数据,再动态返回给前端.比如实现无刷新修改html元素.那反过来,由php后端执行到某段代码,如果成功,就动态的修改前端页面的代码,同样实现无刷新,有这个技术吗?

回复内容:

如题,ajax都是由前端页面某个动作触发,然后到后台取数据,再动态返回给前端.比如实现无刷新修改html元素.那反过来,由php后端执行到某段代码,如果成功,就动态的修改前端页面的代码,同样实现无刷新,有这个技术吗?

websocket推送数据给前端

comet,websocket都可以,不过都是需要client端发起连接。

首先你要明白的是,php是一种运行在服务端的语言,他无法主动执行和发起请求,因为:

  1. php是一种同步执行的脚本语言,自然无法实现异步回调。

  2. 服务端不知道要发给谁,目标ip?目标端口?

  3. 即使服务端知道了要发给谁,在用户足够多的时候,也无法应付。

  4. 即使用户很少,目前http协议也无法实现此功能,http协议中server端无法向client端发起协议,只能换另外的通讯协议。

  5. 即使更换了另外的通讯协议,客户端必须开放某个端口以供服务端发起强求,这对安全性和便利性和规范性来说,都几乎不可能实现。

  6. 即使以上种种困难都克服了,客户端不又变成了一个实质意义上的服务端了吗?

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn