我有一个Web应用程序,例如A,A将生成并弹出B页面(一个二维码),用户扫描二维码后,第三方服务器将向A应用程序发送一个“$_POST”到http://example.com/notify/ ,我如何创建一个 php 函数来回显一些 javascript(页面将继续打开)?
我尝试添加到应用程序的 Controller ,但它不起作用
echo "success";
echo '<script language="javascript">';
echo 'alert("message was received")';
echo '</script>';
最佳答案
您可以采取两种基本方法。
- 投票
- 服务器推送
轮询更简单,但通常效率较低。
当您的服务器收到来自第三方服务器的 HTTP 请求时,将信息记录在其中(例如数据库中)。
您想要显示结果的页面应该使用 JavaScript(例如 XMLHttpRequest 对象)按时间间隔向 URL 发出请求。
该 URL 应返回您存储在数据库中的信息(或指示数据尚不可用的通知)。
服务器推送更复杂,但效率更高。浏览器保持与服务器的连接打开,并且可以随时沿连接向任一方向发送数据。这通常通过 Web Sockets 来实现.
<小时/>无论哪种方式,您都应该沿着连接发送数据(即收到消息)而不是JavaScript。让向用户呈现消息的 JavaScript 成为等待消息的代码的一部分,而不是消息本身的一部分。
关于javascript - 如何使用php接收通知(远程发布)并运行javascript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50563469/