如何跨子域发布表单

时间:2010-08-16 17:17:11

标签: php javascript permissions

我需要将名称,姓氏,年龄等形式的一组值传递给不同子域中的PHP文件。

例如,form.html位于http://subdomain1.website.com/form.html,当我按下提交按钮时,它会将表单中的数据传递给http://subdomain2.website.com/doform.php并将其插入数据库。

如何传递此数据?

我试过了:

$.post('http://subdomain2.website.com/doform.php', {key : 'fdsjfojdsfmkldskfoidsjk'}, function(data){
            alert(data);                                                       
   });

它以permission denied失败。我能解决这个问题吗?

3 个答案:

答案 0 :(得分:1)

JSONP不允许POST操作。如果subdomain2仅接受POST中的数据,那么您应该考虑使用服务器端代理文件。通过ajax将你的POST数据发送到subdomain1的php文件,这个脚本最终会向subdomain2发送一个POST请求。

答案 1 :(得分:0)

谷歌搜索“javascript跨域帖子”让我知道了这个:

How do I send a cross-domain POST request via JavaScript?

答案 2 :(得分:0)

考虑使用JSONP。它是跨域请求的唯一真正的跨浏览器解决方案。不幸的是,没有办法将JSONP请求作为POST操作。

使用JQuery还有一篇不错的文章,你可能会觉得有用:

http://usejquery.com/posts/9/the-jquery-cross-domain-ajax-guide