2017-03-01 127 views
1

我不是一个有经验的开发人员,但我目前正在学徒,而且我的高级开发人员最近离开了我,并独自一人前往!从GET更改为POST

我从他那里听说,使用'GET'请求比'POST'更好,但是在读完后我想切换到'POST',我唯一的问题是我有点不确定如何修改我的代码来切换从'GET'结束。下面我已经在我们的系统中留下了一个共同的范围。任何帮助将是伟大的

$scope.changenote=function(id,note){ 
note = encodeURIComponent(note); 
var inserthistory = './dbscripts/solicitors/changenote.php?id=' + id + '&user=' + AppStorage.getCurrentUser().username + '&note=' + note; 
console.log(inserthistory); 
        $http({method: 'GET', url: inserthistory}).success(function(data) { 

     var historyurl = './dbscripts/solicitors/gethistory.php?ref=' + $scope.bbref; 

      $http({ 
       method: 'GET', 
       url: historyurl 
      }).success(function(data) { 
       $scope.histnoteaddbtn = []; 
       $scope.history = data; 
      $state.go($state.current, {}, { 
        reload: true 

      }); 
    }); 
swal("Saved!", "Your note has been saved!", "success") 
}) 
} 
+0

那么这取决于你在做什么系统!我的意思是这是一个CMS或...?而且你不能总是把GET改成POST!有时你需要在一些功能中使用每一个!而关于安全性,POST和GET之间基本没有什么不同!在这两种情况下,您必须使用准备好的查询语句并在查询中使用它之前检查数据! – Soheyl

+0

@GeomanYabes大喊?哪里? –

+1

** Soheyl **的评论..:D总是用'!' –

回答

2

很好,在第一种情况下,我重构了这些代码。我不知道为什么所有这些字符串都保存到变量中,而它的代码中再也没有使用它。我真的不知道它的用途。我将您的请求从GET更改为POST。您可能需要检查您的API端点,并让他们监听POST请求。最终您的代码如下所示:

注意:将请求数据解析为请求的URL。要创建一个RESTful API,你应该看看这里W3C HTTP Method Definition。所有的请求方法都集中在一个特殊的用例上。

$scope.changenote = function(id,note){ 
    $http({method: 
     'POST', 
     url: './dbscripts/solicitors/changenote.php?id=' + id + '&user=' + AppStorage.getCurrentUser().username + '&note=' + encodeURIComponent(note)} 
     ).success(function(data) { 
      $http({ 
       method: 'POST', 
       url: './dbscripts/solicitors/gethistory.php?ref=' + $scope.bbref 
      }).success(function(data) { 
       $scope.histnoteaddbtn = []; 
       $scope.history = data; 
       $state.go($state.current, {}, { 
        reload: true 

       }); 
      }); 
      swal("Saved!", "Your note has been saved!", "success") 
    }) 
}; 
+0

感谢队友,我不确定这是多么容易。我有一个问题发送真正的大字符串到数据库。恶梦! –

+0

@AlexBanerjee欢迎您。您可能会将数据解析为请求正文而不是网址。该URL有许多限制。 – lin

+0

我有点不确定这是如何完成的。我认为这就是'POST'这就是为什么我想从'GET'切换。我下周开始上课,希望我可以多学点东西。一次性抛出angular,html和css是有点过分了xD –