2015-08-04 2 views
1

Я пишу веб-API и должен добавить two get method с id as parameter.Как добавить несколько методов http с помощью id как param?

первый метод апи:

[Route("{id}")] 
    public IHttpActionResult GetItem(int id) { 
     // some code 
    } 

второй метод апи:

[Route("clientid/{id}")] 
    public IHttpActionResult GetItemByClientID(int id) { 
     // some code 
    } 

Аякса вызов:

$http({ 
     url: 'api/mycontroller/clientid', 
     method: 'get', 
     params: { id: id } 
}) 

но вызов метода первого апи, так как я могу назвать своим вторым метод api?

Заранее спасибо.

ответ

1

Для вызова 2-ой метод апи,

[Route("clientid/{id}")] 
public IHttpActionResult GetItemByClientID(int clientId) { 
    // some code 
} 

Я сделал изменения в Ajax вызова:

$http({ 
    url: 'api/mycontroller/clientid/id?clientId='+id, 
    method: 'get' 
}) 

Route["clientid/{id}"] сделать маршрут как clientid/id следовать с параметром clientId

так Аякса URL должен быть как 'api/mycontroller/clientid/id?clientId='+id

0

В запросе GET, вместо передачи params вы можете сделать это:

$http({ 
     url: 'api/mycontroller/clientid?id='+id, 
     method: 'get', 
}) 
+0

это так же, как прохождение 'Params: {: ID}', HTTP вызов является одинаковым для обоих, как 'HTTP: // локальный/API/mycontroller/ClientID? ID = 1 ' –

Смежные вопросы