当前位置: 首页 > 面试题库 >

Codeigniter + Angular Js:如何接收JSON数据

尚嘉勋
2023-03-14
问题内容

这种情况:

我有一个用Angular JS制作的简单应用程序,它通过codeigniter中的API与服务器通信。

该应用程序中有一个登录系统。当用户输入电子邮件和密码时,此数据将发送到服务器,如果电子邮件存在且密码匹配,则返回true。

我做了很多尝试,但没有弄清楚我该怎么做。

这是代码

表格:

<form role="form" method="post" novalidate ng-submit="submitForm()">
  <div class="form-group">
    <label for="exampleInputEmail1">Email address</label>
    <input type="email" class="form-control" name="email" ng-model="user.name" placeholder="Enter email">
  </div>
  <div class="form-group">
    <label for="exampleInputPassword1">Password</label>
    <input type="password" class="form-control" name="password" ng-model="user.password" placeholder="Password">
  </div>

  <button type="submit" class="btn btn-default">Submit</button>
</form>

这是Angular js控制器:

 $scope.authorized = false;

 $scope.user = {};

 $scope.submitForm = function() 
 {
    console.log("posting data....");

    $http({
        method : 'POST',
        url : 'http://127.0.0.1/api/main/login',
        headers: {'Content-Type': 'application/json'},
        data : JSON.stringify({email:$scope.user.email, password:$scope.user.password})
    }).success(function(data) {
         console.log(data);

        $scope.authorized = data;

        if ($scope.authorized) { $location.path("memberArea"); };

    });

}

codeigniter方法 中尝试了很多东西。现在只有这样:

function login()
{
    print json_encode($_POST);
}

但是我不知道是否可以将数据接收到$ _POST中,因为它似乎是空的。

所以问题是:

如何使用codeigniter方法接收数据?最好先发送为JSON,然后发送为json_decode?我也尝试过json_decode($ _ POST,true); 但是是空的。但是,如果数据不在$ _POST中呢?我有点困惑。

谢谢你的帮助!

编辑:

谢谢你们的答复。那是尝试过的一件事。但是不知何故。现在,例如,方法是这样的:

function login()
{
    $email = $this->input->post('email');
    var_dump($email);
    print json_encode($email);
}

但是返回的是布尔值false。


问题答案:

谢谢回复。解决方法如下

$obj=json_decode(file_get_contents('php://input'));

你可以通过测试

print_r(json_decode(file_get_contents('php://input')));


 类似资料:
  • 问题内容: 我正在尝试使用CodeIgniter开发我的项目的前端客户端。 但是带有CI的ajax使我感到困惑。 这是我的ajax: 和控制器: 现在,我可以通过数组索引获取帐户和密码,但是如何将接收到的数据转换为Object,这样我就可以获得属性: 谢谢! 问题答案: 更改您的ajax: 更改您的控制器: 希望这项工作对您有帮助…

  • 问题内容: 我正在尝试从服务器接收数据后手动引导AngularJS。 bootstrap.js: 启动后,我需要在应用程序中使用或。因此,我无法在文件上放更紧密的javascript 来保持所有内容的私密性,从而使该功能和变量可供应用程序的其他部分访问。 是否可以将所有内容设为私有,但仍然可以让应用的其他部分访问? 问题答案: 您可以将其作为可注射剂公开以使其在您的应用中可用: 然后可以将其注入控

  • 我想连接到API,但我需要用post发送数据,但用JSON接收。 file_get_contents(url_here):打开流失败

  • 问题内容: 我们制作了一个AngularJS应用,其中用户打开一个URL(xyz.com/booking)填写表格,然后选择一些要购买的物品。 之后,该用户单击“购买”按钮,并离开该站点进入支付网关站点。成功付款后,Payment Gateway会通过在回调URL(xyz.com/booking- success)上发送POST请求来发回用户。 现在的问题是,我为该回调URL配置的相应Angula

  • 本文向大家介绍如何与服务器之间发送和接收JSON数据,包括了如何与服务器之间发送和接收JSON数据的使用技巧和注意事项,需要的朋友参考一下 JavaScript可以将网络请求发送到服务器并加载JSON。JS使用称为AJAX的东西来做到这一点。AJAX代表异步JavaScript和XML。JS具有一个API,可提取以将GET(接收)和POST(发送)信息发送到服务器。 您可以通过以下方式使用访存来获

  • null 我希望得到json,但我得到了这个错误: 看起来我的servlet没有返回任何东西。如果我用更改,我什么也得不到。如果我用,我仍然一无所获。 谢谢:)(请客气,这是我第一次学习这些语言。而我已经很困惑了)。 我在catalina.out中获得。 再次感谢你对我的耐心和时间。