将发布数据从一个Web应用程序(www.example1.com)传输到另一个Web应用程序(www.example2.com)

时间:2018-08-08 16:16:45

标签: jquery ajax asp.net-mvc

我有两个Web应用程序(webapp1,webapp2)。

在webapp1中,我有一个按钮和两个texbox(教科书1,教科书2)。 在webapp1的点击按钮上,在新标签页中打开一个出现在webapp2上的表单。

Webapp2的

表单包含2个文本框(textbox3,textbox4)。 提交表单后,是否可以分别将textbox3,textbox4的值分配给webapp1的textbox1,textbox2?

我尝试使用cors,jsonp,但失败了。 主要问题是从webapp1调用表单webapp2并在webapp1接收数据。 WebApp1的示例代码如下:

// WebApp1 code
<div style="padding-top:30px">
   <a href="http://{webapp2}/test/Controller/Method" target="_blank">Add</a>
</div>
<div style="padding-top:30px">
   <input type="text" class="form-control" id="txtbox1" name="txtbox1">
</div>
<div style="padding-top:30px">
   <input type="text" class="form-control" id="txtbox2" name="txtbox2">
</div>


<script type="text/javascript">
$('a').on('click', function (event) {
    // Prevent default link behavior
    event.preventDefault();
    event.stopPropagation();
    var targetAttr = $(this).attr('target');
    var linkHref = $(this).attr('href');

    var win = window.open(linkHref, "window2", '', true);
    var pollTimer = window.setInterval(function () {
        try {
            alert(win.document.URL);
            console.log(win.document.URL);
            if (win.document.URL.indexOf("webapp1/Test/Index") != -1) {
                window.clearInterval(pollTimer);
                // url also contains encrypted data sent by webapp2
                var url = win.document.URL;
                win.close();
                debugger;
            }
        }
        catch (e) {

        }
    }, 500);
});

有人知道如何解决这个问题。 预先感谢。

0 个答案:

没有答案