Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AngularJS:资源未发送带有未定义变量的参数_Javascript_Angularjs - Fatal编程技术网

Javascript AngularJS:资源未发送带有未定义变量的参数

Javascript AngularJS:资源未发送带有未定义变量的参数,javascript,angularjs,Javascript,Angularjs,我目前有一个带有控制器的基本表单设置,当用户提交表单时,将运行此功能: $scope.create = function(email, username, password) { MyService.get({ action: 'create', email: email, username: username, password: password }, function(data) { // Success callback }); }; 问题是,如

我目前有一个带有控制器的基本表单设置,当用户提交表单时,将运行此功能:

$scope.create = function(email, username, password) {
MyService.get({
    action: 'create',
    email: email,
    username: username,
    password: password
}, function(data) {
    // Success callback
});
};
问题是,如果用户提交的表单中有一个空字段,则接收该请求的php会为该字段抛出一个未定义的索引错误

例如:用户不填写电子邮件并按提交。php抛出一个错误,因为
$\u GET['email']
是一个未定义的索引


如果字段为空,如何获取该字段以使资源只发送一个空值?(我更喜欢这样做,而不是添加
array\u key\u exists
检查php中的所有内容)

只需将空字符串指定为回退值,如下所示:

MyService.get({
    action: 'create',
    email: email || '',
    username: username || '',
    password: password || ''
}), // ..

但让我告诉你们:仅仅依靠客户端验证通常是一种糟糕的做法。我希望这是一个内部项目,它永远不会让一些邪恶的人把这些请求引入歧途。否则,您最好在服务器代码中使用
isset | empty

是的,就是这样。这实际上只是一个介于这个服务器和一个api服务器之间的中间件,所以我不需要对jsonp做任何事情,可以在将它发送到api之前编辑一些东西。api执行所有检查。