发送jQuery请求到Django REST框架结果没有找到JSON对象错误

我正在使用Django的REST框架来支持API,并使用jQuery向它发送Ajax请求.

以下cURL工作正常:

curl -X POST -d '{"timeLogMins": 30,"personid": 3,"projectid": 8,"timeLogStart_dtm": "2013-07-18"}' -H "Content-Type: application/json" -u user:password http://localhost:8000/api/timelogests/

但是,当我使用jquery进行ajax调用时,我收到错误

$.ajax({
    url: update_url2,contentType:"application/json",headers: {
        "Authorization": "Basic " + window.btoa("user:password"),},dataType: "json",data: {
            "timeLogMins":30,"personid":personid,"projectid":projectid,"timeLogStart_dtm":start_date
            },type: 'POST',}).error(function(r){ console.log(r) })
.success(function(r){ console.log("success",r) })

设置标题工作正常,但数据似乎返回:

"{"detail": "JSON parse error - No JSON object could be decoded"}"

我昨天开始使用REST Framework,所以还是很新的.有没有办法拦截请求标头并检查JSON? REST Framework请求对象不是很明显.

解决方法

事实证明,将发送的数据转换为实际字符串将使框架可以读取JSON.根据jQuery文档,这应该以任何一种方式发生,但它似乎打破了这个特定的数据对象的布局?这解决了我的问题,但我不确定是什么问题.

相关文章

1.第一步 设置响应头 header('Access-Control-Allow...
$.inArray()方法介绍 $.inArray()函数用于在数组中搜索指定的...
jquery.serializejson.min.js的妙用 关于这个jquery.seriali...
JS 将form表单数据快速转化为object对象(json对象) jaymou...
jQuery插件之jquery.spinner数字智能增减插件 参考地址:http...