2013-01-13 5 views
0

J'essaye de charger des données d'un contrôleur Web-api à partir d'une page de rasoir qui a été chargée par un contrôleur standard.

Cependant, lorsque j'essaie d'exécuter $ .getJSON(), il échoue car la méthode getJSON ajoute son nom de contrôleur d'origine avant l'appel. Comment puis-je contourner cela? Exemple: une vue de rasoir est chargée depuis le contrôleur MyController. J'ai un contrôleur webapi appelé ExplorerApi où je souhaite exécuter une méthode. Donc, à partir de la vue de rasoir j'appelle

$.getJSON("api/explorerapi/getavailablegroups?userid=marcel", function (data))

qui échoue parce que jQuery a ajouté MyController en avant et ainsi convertie à:

$.getJSON("MyController/api/explorerapi/getavailablegroups?userid=marcel", function (data)) 

EDIT -

je peux appeler la api web à partir du navigateur et il retourne heureusement les données json en tapant simplement http://localhost:59475/api/ExplorerApi/getavailablegroups?userid=marcel&context=pf dans le navigateur! mais en utilisant le code ci-dessous, il ajoute le nom du contrôleur d'origine en face!

var uID = sessionStorage.getItem("symUserID"); 

      var v = "userid=" + uID + "&context=portfolio"; 
      $.getJSON("api/explorerapi/GetAvailableGroups?" + v, null, function (data) { 
       debugger; 
      }) 
      .fail(
      function (jqXHR, textStatus, err) { 
       debugger; 
       alert(err); 
      }); 

Le message d'alerte dit: Introuvable - alors si vous regardez dans les charges jqXHR.responseText de données il y a l'erreur 404 et plus bas la déclaration qu'elle tente d'exécuter dans lequel il a placé le nom de le contrôleur original !!

URL demandée       http: // localhost: "? Api/explorerapi/GetAvailableGroups" 59475/MyController/api/explorerapi/GetAvailableGroups userid = marcel & contexte = _ = & portefeuille 1358064733267

+0

Je ne suis pas sûr de comprendre, pouvez-vous modifier la réponse exacte renvoyée par le serveur dans votre question? Une réponse est-elle renvoyée? Cela pourrait être un problème de routage –

+0

s'il vous plaît voir la modification dans ma question - la vue a été créée par MyController de sorte qu'il semble que getJSON regarde d'abord dans ce contrôleur que je ne veux pas qu'il fasse! – Marcel

+0

votre chemin est relatif, c'est le problème –

Répondre

1

Au lieu de utilisez "/ api/explorerapi/GetAvailableGroups?".

+0

C'était tout !! Merci! – Marcel

Questions connexes