Ionic2& Angular2 $ http POST请求

时间:2017-01-22 03:36:44

标签: angularjs angular ionic-framework ionic2

我目前正在尝试将一些数据发布到外部PHP文件中。

问题:

接收日志错误: SyntaxError:意外的令牌<在位置0的JSON中

数据参数未作为标题发布。

我正在努力实现的目标

将用户名推送到API并获取带有数据的JSON响应以推送到HTML表格。

我的代码

.controller('listController', ['$scope','$http', function($scope,    
$http){

  console.log("HTTP request initialized.");


      var request = $http({
        method: "post",
        url:"http://test.com/user/projects.php",
        data: {
            username: "jimmie",
        },
        headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
    });

    console.log(request);

    /* Response:  */
    request.success(function (data) {
        console.log(data); // outputs **Recieving Log Error:** Above 
    });
}])

问题

我在app.js中使用此方法,因此HTML可以使用ng-controller请求在应用程序启动时调用该方法。由于我已经研究了这个问题一段时间了,并且在Angular 2中发现了大量离散问题,但代码完全不同,并且没有使用$ http请求,也没有使用带有$ scope的.controller。

我能以更简单的方式解决这个问题吗?由于应用程序通常只使用GET和POST请求构建。

获取请求

我在我自己的API上尝试了一个GET请求,只是为了检查它是否是我正在使用的过时模块,但GET有效,但方法:发布数据不会。

谢谢,Jimmie。

=)

1 个答案:

答案 0 :(得分:0)

你的post方法接受一个对象而不是字符串

var obj = {
     username: "test"
 }
var request = $http({
        method: "post",
        url:"http://test.com/user/projects.php",
        data: obj,
        headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
    });