sto usando $routeProvider
per impostare un percorso come
when("/grab/:param1/:param2", {
controller: "someController",
templateUrl: "templates/someTemplate.html",
}).
Quindi nel someController
Posso leggere i parametri con $routeParams.param1
.
Come posso ricevere un POST JSON invece, quindi non devo usare i parametri nell'URL? C'è qualcosa che posso usare nel controller ad es $request.postData
?
EDIT: cercherò di renderlo più chiaro
Invece di ricevere param1
e param2
(che si trovano nell'URL di una chiamata GET) e quindi utilizzano $routeParams
per leggerli e usarli nel mio controller, vorrei ricevere un oggetto JSON (che ovviamente rimane in una richiesta POST) e che quell'oggetto fosse disponibile nel mio controller.
risposte:
0 per risposta № 1Finalmente ho avuto il problema. Non c'è PHP o qualunque script lato server su mywebsite.com che possa ottenere l'oggetto JSON (POST) e JavaScript da solo non può. Guarda anche Questo.
0 per risposta № 2
Probabilmente vuoi passare a service
al resolve
opzione del percorso nel provider del percorso. Il servizio dovrebbe implementare $http
e prendi il json. Un'opzione di risoluzione deve completare il recupero prima dell'inizializzazione del controller. La risoluzione renderà inoltre disponibili i dati json nell'ambito $ scope del controller.
L'impostazione della prima volta non è banale, ma è ripetibile e anche uno dei modi più comuni per passare i dati da una richiesta http a un controller angolare.
Dai un'occhiata a questa risposta: AngularJS: file JSON $ http.get di fabbrica