Home  >  Article  >  Backend Development  >  ajax由前端页面触发发起,反过来能实现吗?

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

WBOY
WBOYOriginal
2016-06-06 20:06:061134browse

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

回复内容:

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

websocket推送数据给前端

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

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

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

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

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

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

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

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

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn