javascript - 发布 500 错误 : axios behaves differently in two very similar but independent functions in asp.net React 应用程序

标签 javascript asp.net reactjs asp.net-web-api axios

我有以下两个单独的函数来发布更新 评论。它们几乎相同,但 UpdateComment 函数会抛出 Post 500 错误。

export function PostComment(commentData) {
    return dispatch => {

        dispatch(dataOperationBegin());

        axios({
            method: 'post',
            url: 'api/AssessmentDiscussionPost/Create',
            data: {
                Content: commentData.Content,
                DoesAgree: commentData.DoesAgree,
                ParentPostId: commentData.ParentPostId,
                SubmissionId: commentData.SubmissionId,
                RubricItemId: commentData.RubricItemId
            }
        })
            .then(response => {
                dispatch(postCommentSuccess(response.data));
            })
            .catch(error => { dataOperationFailure(error) });
    };
}


export function UpdateComment(commentData) {
    return dispatch => {

        dispatch(dataOperationBegin());

        axios(
            {
                method: 'post', url: 'api/AssessmentDiscussionPost/Update',
                data: {
                    Id: commentData.Id,
                    Content: commentData.Content,
                    PostOwnerId: commentData.PostOwnerId,
                    ParentPostId: null,
                    SubmissionId: commentData.SubmissionId
                },
            })
            .then(response => {
                dispatch(updateCommentSuccess(response.data));
            })
            .catch(error => { dataOperationFailure(error) });
    };
}

服务器上有api/AssessmentDiscussionPost/Create对应的web api函数,正确调用:

    [Authorize(Roles = "Student, Instructor")]
    [HttpPost]
    [Route("api/AssessmentDiscussionPost/Create")]
    public AssessmentDiscussionPostDTO Create([FromBody] AssessmentDiscussionPost post)
    {

这是 api/AssessmentDiscussionPost/Update 的其他 Web API 函数,它从不被调用:

    [Authorize(Roles = "Student, Instructor")]
    [HttpPost]
    [Route("api/AssessmentDiscussionPost/Update")]
    public AssessmentDiscussionPost Update([FromBody] AssessmentDiscussionPost post)
    {

我在这上面花了好几个小时,但仍然毫 headless 绪。有人至少可以指导我确定实际问题。

最佳答案

您的问题肯定与 BE 相关,但是为什么在应该使用 PATCH 或 PUT 时使用 POST 更新内容?也许这就是原因。

关于javascript - 发布 500 错误 : axios behaves differently in two very similar but independent functions in asp.net React 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57022689/

相关文章:

javascript - 更改根目录名称后,Webpack 开发服务器不监视文件

javascript - angularjs 自定义 Twitter Bootstrap 模式指令

html - Z-index 属性 CSS

c# - 未应用 ASP.NET href CSS

c# - 将用户页面添加到托管网站

javascript - 设置或替换 Facebook 聊天中的 textContent

reactjs - 不可变-JS : Merge a List of Maps by key

javascript - 如何让cloudantDb.search返回所有记录而不是限制25条和书签

android - React Native 获取调用在 iOS 中工作,但在 Android 中不工作

javascript - svg.js - 如何从 SVG 文本元素获取 X 位置