我遇到问题,当我通过Django通过我的Angular应用程序发出帖子请求时,即使输出正确,我也会得到无效的序列化器。
我控制台记录发送的数据:
{"email":"example@gmail.com","username":"example","password":"plaintextforthisexample","confirm_password":"plaintextforthisexample"}
这给了我回复错误请求(我已设定在serializer.is_valid()
为false
时发生)。
但是,如果我将控制台日志中的内容复制并粘贴到原始数据下的可浏览API中,则会接受它并创建用户。
我可以成功将get-requests
发送到同一API并获取数据,获取和发布的权限相同,但这会导致其他类型的错误。
内容类型也是正确的,当我没有得到415.如果URL错误我得到500.我可以在Django服务器日志上看到帖子请求进来。
可能是因为我是从角度模板运行而不是Django运行吗?
编辑:
答案 0 :(得分:0)
问题1:在Django中工作的控制台记录输出不是实际发送的输出,导致JSONParse错误。 它看起来像这样的
function(formobject){
let payload = JSON.stringify(formobject)
console.log(payload)
return formobject
问题2:现在Django在抵达时给出了我的自定义回复:
Status:'Bad Request'
Message:'Data does not fullfill requirements for creating a user'
并且不允许我将控制台的JSON输出复制粘贴到API原始数据表单中。
解决方法是不使用我用过大约15次尝试的相同密码。似乎Django检测到常见密码,尚未经过全面测试。