阅读ajax帖子回复时遇到问题

问题描述:

我正在一个网站上工作,我正尝试使用ajax连接JavaScript和php。阅读Ajax响应时遇到问题。阅读ajax帖子回复时遇到问题

我有一个PHP脚本,它具有以下代码:

<?php 
echo "1"; 

而且用JavaScript编写ECMA 6的功能,它具有以下代码:当我调试

loginUser(username, password) { 
     return new Promise((resolve, reject) => { 

      var request = require('ajax-request'); 
      request.post(
       { 
        url: 'http://swiftservice.psoftwarestudio.com/Admin.php', 
        data: { 
         username: username, 
         password: password 
        }, 
        headers: {} 
       } 
       , (data) => { 
        resolve(data); 
       } 
      ); 
     }); 
    } 

,数据始终为空。我在网络编程方面非常新颖,尤其是惠普ajax。 我希望有人能指出我的错误,谢谢。

+0

你看过浏览器的开发者工具吗? – Anton

+0

@Anton当我将数据放入监视中并且在我呼叫解析时停止在线上时,没有错误,它表示数据为空,这就是全部。如果这是问题 –

+0

请发送标题,因为这是一个很好的习惯,例如:headers:{'Accept':'application/json','Content-Type':'application/json',}。并尝试从服务器端返回json。尝试使用chrome中的Source选项卡来调试您的代码 – DASH

我看了ajax-request模块的文档和注意到回调需要3个参数:function(err, res, body) {

也许所需的数据是在第三?

+0

它是,谢谢,解决了它。 –

+0

我只用一个参数的原因是我看到的帖子 –

您需要解析data你从你的AJAX回叫成JSON对象,你得到的是它的字符串表示:

loginUser(username, password) { 
     return new Promise((resolve, reject) => { 

      var request = require('ajax-request'); 
      request.post(
       { 
        url: 'http://swiftservice.psoftwarestudio.com/Admin.php', 
        data: { 
         username: username, 
         password: password 
        }, 
        headers: {} 
       } 
       , (data) => { 
        resolve(JSON.parse(data)); 
       } 
      ); 
     }); 
    } 
+1

如果他得到null这不是问题:) –

+0

@MarkoMackic刚刚意识到它是节点代码...>。 Luca

+0

用户名和密码在数据中,我是否缺少“”那里? –