在Django上对HTTP请求和JSON消息进行故障排除

时间:2018-09-13 17:25:53

标签: javascript python django http ubuntu

好的,所以我已经花了一段时间了,看来我什么也没得到。我正在使用Nginx和uwsgi运行Django应用。我有一个http.post,我甚至试图阅读我不断出错的项目。

这就是我的JS代码:

$scope.receipt_pay_update = function(items)
{ 

  response = confirm("Do you want to continue with the changes?");
if(!response){

  return;
  }
  var data = {
        'items': items,
        'time_now': moment().format("YYYY-MM-DD")
    };
  items.showmessage = true;
  console.log(data)
       $http.post("/foodhub/dashboard/receipt_pay_modal_update", data,{
           data: JSON
       }).
       success(function(data,status,headers,config){
        $scope.alertclass = 'alert-success';
        $scope.save_message_farmer = "Succcessfully update payment"
        console.log("SAVED!")
       }).
       error(function(data,status,headers,config){
        $scope.alertclass = 'alert-danger';
        $scope.save_message_farmer= "Failed to update inventory, please try again"
       })
}

这是我的views.py的样子:

@login_required

def receipt_pay_modal_update(request):
import sys
reload(sys)
sys.setdefaultencoding('utf8')


data = json.loads(request.body)['items']

print data

rec = ReceiverActions.objets.get(identifier = data[0]['identifier'])

rec['paid_check'] = data[0]['paid_status']
rec['date_paid'] = data[0]['paid_date']

rec.save()
return HttpResponse(status=status.HTTP_200_OK)
  1. 我遇到了无法解码JSON的错误。因此,我尝试了data = request.body[0],该方法也无效。
  2. 是否还有其他方法可以测试服务器上的小更改而无需执行Git push,Git Pull,Python -m compileall等?我问的原因是因为实践中教会我这样做,所以我觉得有更好的方法。
  3. 我在哪里可以查看我的print data

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

结果发现我得到的data不适合JSON。我回过头来,更改了将数据作为json发送的请求,它运行良好。