Umbraco 7 UmbracoAuthorizedApiController返回405(方法不允许)

时间:2014-08-20 20:43:17

标签: c# angularjs umbraco umbraco7

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

在回复中我看到以下文字

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

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

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

感谢。

3 个答案:

答案 0 :(得分:4)

我遇到了同样的问题,对我来说问题是我意外地HttpGetAttribute.HttpGet而不是System.Web.Http.HttpGet

答案 1 :(得分:1)

您的方法名称是什么?我发现,如果你实际上没有"得到"在名称的前面,它会抛出这个错误所以 public string CorrectTime(字符串时间)< - 会失败但是 public string GetCorrectTime(字符串时间)< - 将传递

答案 2 :(得分:0)

因为您想导出数据,我想您正在尝试将此控制器用于大众。但是,UmbracoAuthorizedApiController仅适用于documentation中提到的后端用户。您不应该使用这些来公开Umbraco后端之外的数据。

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

作为前缀