AJAX返回PHP代理文件的内容

时间:2015-05-13 10:41:51

标签: javascript php jquery ajax

这是我第一次在stackoverflow上发帖,所以请耐心等待。我目前正在为Android构建混合HTML5应用程序,我有一个需要传递给服务器的javascript变量。我这样做是通过发出一个AJAX请求并指定一个PHP文件作为代理来绕过Same-Origin策略。然而,这提出了一个令人惊讶的问题。我的AJAX get方法不会返回我的PHP文件的结果(如果要运行它),而是文件本身。

这是AJAX代码:

function connect(trimmedData) {
    $.ajax({
        type: 'get',
        url: 'php/SOAPProxy.php',
        dataType: 'json',
        error: function (x, y, z) {
            alert(y + '\n' + z);
            console.log(y + '\n' + z);
        },
        data: { 'method': 'checkUser', 'args': { 'name': 'email', 'value': trimmedData } },
        success: function (data) {
            $("#mainpage").append("Success");
            $("#mainpage").append(data);
        },
        failure: function (data) {
            $("#mainpage").append("FAILURE");
        }
    });
}

PHP代码:

<?php

  $client = new SoapClient("someURL");
  $m=$_GET['method'];
  if(isset($_GET['args'])){
    $result = $client->$m(array($_GET['args']['name']=>$_GET['args'] ['value']));
 }
 else{
   $result = $client->$m();
 }
 $j = json_encode($result)
 print $j;
?>

根据我见过的例子,这应该有效,但显然情况并非如此。有人可以给我任何关于我可能出错的地方吗?

谢谢!

附加信息:这些都是正在运行的SOAP请求,输入是用户电子邮件,响应是某种字符串。

将数据类型设置为&#34; text&#34;奇怪的是,并没有返回整个文件,而是从$ m(数组开始)返回所有内容。仍在尝试确定原因。

0 个答案:

没有答案