【问题标题】:Umbraco 7 UmbracoAuthorizedApiController returns 405 (Method Not Allowed)Umbraco 7 UmbracoAuthorizedApiController 返回 405(不允许的方法)
【发布时间】:2014-08-20 20:43:17
【问题描述】:

我在 umbraco7 中创建了一个自定义树,并且有一个按钮,该按钮将调用一个名为 ExportApiController 的UmbracoAuthorizedApiController 我添加了一个构造函数并在其上设置了一个断点,以查看该控制器是否确实被实例化了。但是当我尝试调用我的操作时,它会返回 405(不允许的方法)

在回复中我看到以下文字

{"Message":"The requested resource does not support http method 'GET'."}

在我的控制器操作之上,我有 HttpGet 属性,我也尝试了 put 或 post,但没有任何帮助。但是我认为当我使用 post 时,我需要在 Angular 中做其他事情来使用表单上的提交来调用它?但我不确定如何或为什么。

如果您需要更多信息,请告诉我,我会发布。

谢谢。

【问题讨论】:

  • 没有人可以对此发表评论吗?我很确定我不是唯一一个尝试这样做的人。

标签: c# angularjs umbraco umbraco7


【解决方案1】:

我遇到了同样的问题,对我来说问题是我不小心得到了HttpGetAttribute.HttpGet 而不是System.Web.Http.HttpGet

【讨论】:

    【解决方案2】:

    你的方法叫什么名字?我发现如果你实际上没有在名称前面有“get”,它会抛出这个错误,所以
    public string CorrectTime(string time) public string GetCorrectTime(string time)

    【讨论】:

      【解决方案3】:

      因为你想导出数据,我猜你是想为广大公众使用这个控制器。但是,UmbracoAuthorizedApiController 仅适用于documentation 中提到的后端用户。你不应该使用这些来暴露 Umbraco 后端之外的数据。

      如果您想要公开数据,并且想要针对成员(而不是用户)进行验证,您应该在 UmbracoApiController 前面加上 MemberAuthorize attribute

      【讨论】:

      • 嗨dampee,这不是问题。我在后端使用UmbracoAuthorizedApiController。用户(不是成员)需要登录并已登录。我有另一个控制器,它做得很好,但这个不是,所以我希望有人能指出我正确的方向。
      • 如果另一个控制器运行良好,您需要在问题中添加更多信息。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-15
      • 2021-12-12
      • 2019-07-28
      • 1970-01-01
      • 2012-07-18
      • 2021-04-05
      相关资源
      最近更新 更多