XDomainRequest对象如何用POST传递变量给PHP?
这是IE8中一个跨域访问中的问题。
HTML:
JScript code:
var xdr = new XDomainRequest();
var para = "act=free&val=112345";
xdr.open("POST","http://127.0.0.3/test.php");
xdr.send(para);
xdr.onload = function(){alert( xdr.responseText )};
xdr.onerror = function(){alert("error!")};
这样传递过去后test.php是接收不到act/val这两个变量的,比较郁闷。网上查了下,Ajax使用POST时HTTP头需要设置为:application/x-www-form-urlencoded,而这个XDR的HTTP却不能设置(我就热了,IE Team脑袋进水了吧)HTTP头。
不要用XMLHttpRequest的解决方法,那个太麻烦了。
PS:这个XDR目前还不完善的说。要用XDR的话,对方域中必须要设置头:Access-Control-Allow-Origin:* ,但IE Team又限制了不允许更改HTTP头,说是比较危险,那一边要求对方设置文件头才能跨域,一边还限制HTTP头为text/xml,这不是画蛇添足么?真是个操蛋。
参考:
http://school.itzcn.com/special-spid-28.html
上面讲解的比较详细,希望对楼主有所帮助。
Access-Control-Allow-Origin:*是服务器端返回响应的时候设置的,设置了之后客户端才可以接收数据。
http://msdn.microsoft.com/en-us/library/cc288168%28VS.85%29.aspx
有例子,应该是可以的。
如果数据不多,还可以使用GET方法
跨域 的功能目前IE支持的还不全面。Firefox 支持的很全面,可以参加
http://blog.csdn.net/net_lover/archive/2010/
相关问答:
1.精通面向对象的设计和开发;
2.熟练使用PHP语言(5.0+)进行数据库,网络通信,文件读写,安全机制等开发;
3.熟练使用MYSQL(5.0+)数据库开发,包括基本的数据库设计/优化/安全,复杂的T-SQL语句编写,熟练编写MYS ......
<!--购买数量-->
<div class='buyinfo'>
<table width='auto'>
<tr>
<td><span>购买数量:</sp ......
代码如下:
function uc_get_user($username, $isuid=0) {
$return = call_user_func(UC_API_FUNC, 'user', 'get_user', array('username'=>$username, 'isuid'=>$isuid));
return UC_CONNECT == 'mysql' ......
已经修改了
(1)PHP.ini中的post_max_size 和upload_max_filesize,并且保证了前者大于后者
(2)Windows\System32\inetsvr\MetaBase.xml中的AspMaxRequestEntityAllowed
修改完毕后,重新启动了IIS服务,并且计 ......
请问
object(Helper_Uploader_File) {
protected '_file' => array(
'name' => string '4_光影_1.jpg' (length=14)
'type ......