Javascript postMessage vs post
在一个站点中,我们可以使用以下代码通过打开新选项卡导航到不同的域:Javascript postMessage vs post,javascript,angular,Javascript,Angular,在一个站点中,我们可以使用以下代码通过打开新选项卡导航到不同的域: <form action="http://www.aka.com" method="post" target="_blank"> <input name="firstName" type="text"> <button >Test me </button> </form> 考验我 最近,我一直在使用window.open和postMessage方法在
<form action="http://www.aka.com" method="post" target="_blank">
<input name="firstName" type="text">
<button >Test me </button>
</form>
考验我
最近,我一直在使用window.open
和postMessage
方法在不同域之间进行通信。我有以下疑问:
- 我可以使用上面介绍的
方法将数据发送到目标窗口(aka.com)吗post
- 如果aka.com是一个角度应用程序,我如何获取发送的数据(例如
的值)firstName
- 如上文所述,我是否可以使用表单和post方法将
替换为类似postMessage
aka.com
上的服务器端代码必须将其提供给Angular代码
我可以用类似于使用表单和post方法的东西来替换postMessage吗
没有方法上的重大改变
我可以使用上面介绍的post方法将数据发送到目标窗口(aka.com)吗
我可以用类似于使用表单和post方法的东西来替换postMessage吗
window.postMessage()和form-POST方法本质上是不同的
表单POST用于向目标URL发送HTTP POST请求。您要做的是将数据发送到新窗口
您不应该使用表单发送数据,而应该使用(单击)处理程序并手动执行
如果aka.com是Angular应用程序,我如何获取发送的数据(例如firstName的值)
由于aka.com是一个Angular应用程序,它可能不知道何时检查窗口数据,除非您全局侦听“消息”事件。一种方法是将数据发送到Angular应用程序中的特定路由,以便它知道“当Angular应用程序路由到此url时,侦听窗口数据,基本上设置
window.addEventListener(“消息”,receiveMessage,false)代码>您是否尝试过这样做?其他域必须侦听消息并读取发送的数据。