1. 错误提示
Method Not Allowed (POST): /api/article/2/comment/
Method Not Allowed: /api/article/2/comment/
[24/Aug/2023 17:11:22] "POST /api/article/2/comment/ HTTP/1.1" 405 0
[24/Aug/2023 17:11:23] "GET /article/2/ HTTP/1.1" 200 26175
[24/Aug/2023 17:11:23] "GET /static/my/css/theme/auto.css HTTP/1.1" 404 1822
2. 错误代码
- 后端url
urlpatterns = [
re_path(r'article/(?P<nid>\d+)/comment/', comment.CommentView.as_view()), # 发布评论
]
- 前端请求
axios.post(`/api/article/${nid}/comment/`,{content:this.comment_content}).then(res=>{
if (res.code){
if (res.self){
this.$refs[`comment_${res.self}`].focus()
}
this.$message.error(res.msg)
return
}
this.$message.success(res.msg)
})
3. 解决方法
- 后端url处
urlpatterns = [
# 将nid放入后面就好了
re_path(r'article/comment/(?P<nid>\d+)/', comment.CommentView.as_view()), # 发布评论
]
- 前端请求处
// 前端同样,将nid参数位置放到后面
axios.post(`/api/article/comment/${nid}/`,{content:this.comment_content}).then(res=>{
if (res.code){
if (res.self){
this.$refs[`comment_${res.self}`].focus()
}
this.$message.error(res.msg)
return
}
this.$message.success(res.msg)
})
结语:不知道为甚么这样改就好了