【发布时间】:2018-08-17 13:19:20
【问题描述】:
我似乎无法弄清楚如何访问我的一个控制器上的方法,设置控制器可以正常工作...
ServiceRouteMapper:
public void RegisterRoutes(IMapRoute mapRouteManager)
{
mapRouteManager.MapHttpRoute(
moduleFolderName: "ImportantDatesModule",
routeName: "default",
url: "{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional },
namespaces: new[] { "company.ImportantDatesModule.Services" });
}
控制器:
[SupportedModules("ImportantDatesModule")]
[DnnModuleAuthorize(AccessLevel = SecurityAccessLevel.View)]
public class ItemController : DnnApiController
...
[HttpGet]
[ActionName("getItems")]
public HttpResponseMessage GetItems()
{
return Request.CreateResponse(HttpStatusCode.OK, "success");
}
正在调用的JS文件:
dnnspamodule.itemsViewModel = function (moduleId, resx) {
var service = {
path: "ImportantDatesModule",
framework: $.ServicesFramework(moduleId),
controller: "Item"
}
service.baseUrl = service.framework.getServiceRoot(service.path);
...
var getItems = function () {
var restUrl = service.baseUrl + service.controller + "/getItems";
console.log(restUrl);
isLoading(true);
var jqXHR = $.ajax({
url: restUrl,
beforeSend: service.framework.setModuleHeaders,
dataType: "json"
}).done(function (data) {
if (data) {
load(data);
isLoading(false);
}
else {
// No data to load
itemList.removeAll();
}
}).always(function (data) {
});
};
【问题讨论】:
-
能否添加一个ajax .fail() 方法来获取http 错误码。是 401、404 吗?
-
是500错误,但是查看响应是404。(响应状态码不表示成功:404(未找到))