0
我有一個Symfony 3項目,前面有Angular JS。 該項目是關於帶有特定XML內容的URL,將其發送到SF3,做一些操作,並將最終結果發送給Angular JS。發送一個JS變量到特定的Symfony路由
我只想在我的Symfony控制器中捕捉我的url變量。
app.js
var app = angular.module("test", []);
app.controller("testCtrl", ['$scope', '$http', '$window', function($scope, $http, $window) {
$scope.getMyXML = function() {
$http.get($scope.urlSubmitted)
.success(function(data, status, headers, config) {
$http({
method: 'POST',
url: Routing.generate('f_api'), //FOSJsRoutingBundle
headers: {},
params: {},
data: {urlToParse:$scope.urlSubmitted}
}).then(function successCallback(response) {
console.log('Sended to SF3');
}, function errorCallback(response) {
console.log('NOT sended to sf2');
});
})
.error(function(data, status, headers, config) {
alert('!! XML GET ERROR !!');
})
}
}]);
Symfony的控制器動作
類延伸myController的控制器 { 公共功能的indexAction(請求$請求) {
$serializer = $this->get('jms_serializer');
$data = $request->request->get('urlToParse');
//var_dump($data);
//die;
return $this->render('MyBundle:My:index.html.twig');
}
public function apiAction(Request $request)
{
$data = $request->request->get('urlToParse');
var_dump($data);
die;
return new JsonResponse();
}
}
而在去年,我的routing.yml
f_home:
path: /
defaults: { _controller: MyBundle:My:index }
f_api:
path: /api/
defaults: { _controller: MyBundle:My:api }
options:
expose: true
的apiAction從未lanched,儘管它的角HTTP POST的...
謝謝!
我有一個的indexAction(我的提交表單),以及apiAction(我想在這裏趕上網址我已經把你的代碼,當我把一個var_dump(data); die;在我的apiAction中,當我提交我的表單時,沒有任何東西出現... – Ajman
你是否嘗試傳遞你的參數到url中:ex:Routing.generate('my_route_to_expose',{id :10}); –
你可以編輯你的文章並添加你的apiAction的註釋 –