updated rest routing to only match numeric IDs.

eg.
Match: api/series/12
No Match: api/series/abc
pull/3113/head
kay.one 12 years ago
parent cf9f8b3f8a
commit 36c0e50c23

@ -11,7 +11,7 @@ namespace NzbDrone.Api.REST
where TResource : RestResource, new() where TResource : RestResource, new()
{ {
private const string ROOT_ROUTE = "/"; private const string ROOT_ROUTE = "/";
private const string ID_ROUTE = "/{id}"; private const string ID_ROUTE = @"/(?<id>[\d]{1,7})";
private Action<int> _deleteResource; private Action<int> _deleteResource;
private Func<int, TResource> _getResourceById; private Func<int, TResource> _getResourceById;
@ -55,10 +55,16 @@ namespace NzbDrone.Api.REST
{ {
_getResourceById = value; _getResourceById = value;
Get[ID_ROUTE] = options => Get[ID_ROUTE] = options =>
{ {
var resource = GetResourceById((int)options.Id); int id;
return resource.AsResponse(); if (!Int32.TryParse(options.Id, out id))
}; {
throw new NotImplementedException();
}
var resource = GetResourceById((int)options.Id);
return resource.AsResponse();
};
} }
} }

Loading…
Cancel
Save