2012-02-14 116 views
3

我从一个表单页面我怎样才能得到一个JSON POST的结果返回

<script src="http://ajax.googleapis.com/ajax/libs/dojo/1.7.1/dojo/dojo.js" type="text/javascript"></script> 
    <script type="text/javascript"> 
     function poster() 
     { 
      var dataToPost = {grant_type: "password", username: dojo.byId("username").value, password: dojo.byId("password").value, redirect_uri: "http://localhost/default.html"}; 
      var xhrArgs = 
      { 
       url: "https://localhost/api/did/authenticate?client_id=12345", 
       handleAs: 'json', 
       postData: dojo.toJson(dataToPost), 
       headers: { "Content-Type": "application/json; charset=UTF-8", "Accept" : "application/json" }, 
       load: function(data, args) 
       { 
        alert("Data = " + data); 
       }, 
       error: function(error, args) 
       { 
        alert("Error! " + error); 
       } 
      } 
      dojo.rawXhrPost(xhrArgs); 
     } 
    </script> 

发布此JSON但我不能够从所述柱获得的JSON结果。我怎样才能得到这些结果?请帮忙。我上载功能的数据是空

+0

AJAX是异步的; 'result = dojo.rawXhrPost'永远不会给你结果。 AJAX调用的结果在'load:'函数中可用。在负载功能 – DwB 2012-02-14 23:48:12

+0

数据返回空(NULL) – avillagomez 2012-02-15 00:28:30

+0

应该是什么您的服务器的回报?我的猜测是你在服务器端有一个没有任何返回值的静默错误。那么你的状态是200 OK,没有数据。尝试把一些尝试捕捉或在这里回响,有:) – PEM 2012-02-15 08:19:25

回答

0

原来,我试图做的是不可能在JavaScript中,因为我想从一个域做到这一点到另一个...这样的跨域实现是不可能的,除非我用的嵌入式闪存对象或代理服务器在我的服务器上传递。感谢尽管帮助...

0

脚本在https://localhost/api/did/authenticate需要printechowrite或以其他方式返回JSON作为文本,因为它退出。