繁体   English   中英

XMLHttpRequest将XML发送到PHP服务器

[英]XMLHttpRequest sending XML to PHP server

我想知道我是否可以从客户端(使用HTML5的画布的2d应用程序)以XML格式向服务器端发送一些数据?

我试过这样的事情:

function send_xml_data_to_server(xml, url) {
    var xmlhttp = new XMLHttpRequest();
    xmlhttp.open("POST", url, true);
    xmlhttp.setRequestHeader('Content-Type', 'text/xml');
    xmlhttp.send(xml);

    xmlhttp.onreadystatechange = function() {
        callback_response_from_server(xmlhttp);
    }
}

因为在我必须发送到服务器端的信息中,它包含一些文本,并且它似乎与MIME完全不正常:

xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');

但是当我在服务器端时,我检查了$ _POST但是里面没有任何内容,对于$ _REQUEST也是如此。

那么,最后,我想知道是否有可能使用XMLHttpRequest将XML数据发送到服务器端PHP?

谢谢!

客户端没有任何问题,但$_POST包含一组已解析的键/值对,但这不是您发送给服务器的内容。 使用这样的东西:

file_get_contents('php://input');

然后你可以使用SimpleXML或任何你喜欢的方式解析字符串。

如果您不以application / x-www-form-urlencoded发送数据,$ _POST将为空。

你试过这个吗?

$xml = file_get_contents("php://input");

这样,您将以原始格式捕获数据并根据使用的mime类型对其进行解释。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM