【问题标题】:After publishing on IIS POST response does not work在 IIS 上发布后 POST 响应不起作用
【发布时间】:2019-04-29 10:10:48
【问题描述】:

我完成了我的 asp.net Web 应用程序并尝试使用邮递员进行发布请求,但在 IIS 上发布后,我没有得到与本地计算机相同的结果。我已经查看了问题是否与我到数据库的连接字符串有关,但这没有问题。我真的不知道如何解决这个问题。

我添加了以下标题:

[System.Web.Http.AcceptVerbs("POST")]
[System.Web.Http.HttpPost, System.Web.Http.ActionName("~/SaveComment")]
[System.Web.Http.Route("~/SaveComment")]


public bool SaveComment(Comment comment)
{
  if (comment == null)
  {
      return false;
  }

     return CommentProcessor.ProcessAddComment(comment);

 }

在本地我得到一个真实的响应,但在服务器上它通过邮递员显示我是错误的。你有什么想法吗?

【问题讨论】:

  • 错误是什么?把错误放在这里。
  • 没有明确的错误。在 iis 上发布应用程序后,它不会通过 POST 回写到我的数据库中。
  • 始终在代码中使用带有Try-Catch 块的异常处理。不处理异常是一种不好的做法。我相信在您的情况下,这可能是路由错误。如果您发现任何错误,请在此处发布。
  • 我的代码中确实有异常处理,但是在 IIS 上发布后,我根本无法调试它。
  • 有点不清楚,所以您能否确认 Postman 请求在您的本地计算机上有效,或者您是否在本地以不同的方式访问您的应用程序?

标签: c# asp.net-mvc post web-config localhost


【解决方案1】:

您正在执行一个 POST 请求。 comment 参数中可能包含 null,因此您将看到 false 作为响应。

尝试在参数中添加[FromBody] 属性。像这样的:

public bool SaveComment([FromBody] Comment comment)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-11-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-08
    • 2020-12-02
    • 2012-09-12
    • 1970-01-01
    • 2018-02-16
    相关资源
    最近更新 更多