从其他域的javascript调用常规asp

时间:2015-04-08 07:38:13

标签: javascript dom asp-classic dojo cross-domain

我之前使用dojo/dom文件中的javascript来调用处理某些数据库查询的另一个域上的php文件,并将结果返回给javascript文件。

对php文件的调用是(我希望我可以使用相同的asp调用)

postdata = dojo.toJson({ action: "get",  userid: 1 });
require(["dojo/_base/xhr", "dojo/dom", "dojo/domReady!"],
function (xhr, dom) {
var xhrArgs = {
    url: "http://otherdomain.com/file.php",
    postData: postdata,
    handleAs: "text",
    load: function (result) { }
};
var deferred = dojo.xhrPost(xhrArgs);

在php文件中我有

$foo = file_get_contents("php://input");
$postvalue = json_decode($foo, true);

dom电话中读取值。

我需要这样做的原因是因为跨域请求我从浏览器收到有关安全风险的错误。

所以我认为我需要使用Jsonp

如何在asp中编写php代码? 不是asp.net

1 个答案:

答案 0 :(得分:0)

由于您的帖子数据是JSON,Request.Form不会被填写,因此您必须使用Request.BinaryReadconvert此结果作为字符串。

请参阅here将此JSON字符串转换为对象。