资源POST作为GET方法


Resource POST Acting as GET method angularjs

我正在尝试学习angularjs,所以今天我尝试使用资源。看起来语法和方法调用都很顺利,

请先打开小提琴

最初我尝试使用$http POST,看起来它工作

$http({url: '/register.php', method: "POST",
data: { 'message' : {userName:'ravi'}}});

与PHP代码:

    $data = file_get_contents("php://input");
    $objData = json_decode($data);
    ....
    ....
    //insert stmt to mysql
接下来,当我尝试使用$resource时,使用

In registerController

authProviders.saveUser($scope.newuser); 

authProviders服务:

return $resource(AppConstants.ServerPath + '/register.php/:registerId',
            {registerId: '@registerId'},{
                saveUser: {
                    method: 'POST',
                    params: {   message: {userName:'ravi'} },
                    isArray: false
                }
            });

调用类似于get方法。你们中有谁能纠正我的错误吗?

我的问题:当您填写表单并提交时,控制台中的URL看起来像

http://fiddle.jshell.net/register.php?message=%7B%22userName%22: % 22 ravi % 22% 7 d它看起来像GET方法,尽管方法类型是POST

从资源中删除参数:

 return $resource(AppConstants.ServerPath + '/register.php/:registerId',
        {registerId: '@registerId'},{
            saveUser: {
                method: 'POST',
                params: {   message: {userName:'ravi'} }, //Remove This
                isArray: false
            }
        }); 

如果您想使用GET方法,那么您必须说

方法:"得到",
参数:{信息:{用户名:"拉维}},

如果要设置为POST,则

方法:"POST",
:{信息:{用户名:"拉维}},