使用PHP Slim和AngularJS进行JSON

时间:2015-05-30 14:10:09

标签: php json angularjs http

我正在尝试将我的AngularJS项目中的一些数据发送到我使用PHP Slim的PHP服务器,但我已经尝试了所有我知道的内容,似乎没有任何工作。

SERVER PHP SLIM

$app->get('/create',function() use ($app) {

        $data = $app->request()->params();
        response_json(200,"DB: User Created",$data);
});

如果我直接从浏览器输入

,它会起作用
http://localhost:8888/core/users/create?login=test&password=123&name=Test&email=test@test.com&phone=12313

但是,如果我尝试使用$ http或$ resource

从应用程序发送
var obj = { name:"Hello",email:"hello@email.com"};
$http.get('/core/users/create?',obj).success(function(data){console.log(data); });

我得到一个空数组[0]。

如果我尝试使用$ resource,我得到一个obj但不是我的期望。

.factory('qServer',function($resource){
return $resource('/core/users/create?:data',{data: '@data'});
});

var obj = { name:"Hello",email:"hello@email.com"};
            var send = JSON.stringify(obj);
            //console.log(lol);
            qServer.get({data:send},function(data) { console.log(data) }); 

使用此代码,我得到一个像这样的对象:

data: Object
{"name":"Hello","email":"hello@email_com"}: ""

任何人都可以告诉我我做错了什么?

1 个答案:

答案 0 :(得分:3)

$http.get方法的第二个参数不是GET参数,而是请求配置。

你想使用这样的东西(注意配置参数中的params键和URL末尾缺少?

var obj = { name:"Hello",email:"hello@email.com"};
$http.get('/core/users/create', {params: obj})
.success(function(data){console.log(data); });

另请参阅:Q: $http get parameters does not workconfig argument docs