$ http.post在发布大文本时返回404

时间:2017-04-11 16:31:36

标签: angularjs iis asp.net-web-api

我有一个与ASP.NET Web API对话的AngularJS应用程序。在我的一个表单中,当我发布少量文本时,它完美地运行。但是当我发布大量文本时,我收到404错误。

我已将我的Web API请求过滤设置更新为:

<system.webServer>
  <security>
    <requestFiltering>
      <requestLimits maxAllowedContentLength="10485760" />
    </requestFiltering>
  </security>
</system.webServer>

<configuration>
    <system.web>
        <httpRuntime maxRequestLength="51200" timeout="3600" />
    </system.web>
</configuration>

但这没有任何区别。

Web API:

[HttpPost]
    [Route("api/notifications/")]
    public Notification UpdateNotification([FromBody]Notification 
notification)
    {
        var toReturn = 
_notificationService.UpdateNotification(notification);
        return toReturn;
    }

调用Web API的Javascript方法:

function updateNotification(notification) {
        return $http.post(appConfig.apiUrl + '/notifications/', 
JSON.stringify(notification))
            .then(updateNotificationComplete)
            .catch(function (message) {
                exception.catcher('XHR Failed for updateNotification')
(message);
            });

        function updateNotificationComplete(data, status, headers, config) {
            return data.data;
        }
    }

Javascript电话:

dataservice.updateNotification(vm.notification).then(function (data) {
                    if (data !== "error") {
                        if (!vm.notification.Id || vm.notification.Id <= 0) 
{
                            vm.notification.Id = data;
                            vm.notificationId = data;
                        }
                        logger.success("Save successful");
                    }
                });

任何指导都将不胜感激!

0 个答案:

没有答案