Issue
Broken interceptor detected: Config object not supplied in rejection: I'm getting this error when I call the post method.
I have given Services, Controller, and PHP Code
Services
angular.module('sbAdminApp')
.factory('Branch', function($resource){
return $resource('api/branchdetails/:branch_id',{branch_id:'@_branch_id'},{
update: {
method: 'PUT'
}
});
})
.service('popupService',function($window){
this.showPopup=function(message){
return $window.confirm(message);
}
});
Controller
angular.module('sbAdminApp')
.controller('BranchDetailsController', function($scope,$state,$stateParams,$window,Branch){
$scope.branch = new Branch();
$scope.addBranch=function(){
$scope.branch.$save(function(){
$state.go('branchdetails');
});
}
});
PHP Code
<?php
require_once('Slim/Slim.php');
require_once('dbconnection.php');
$app = new Slim();
$app->post('/branchdetails','addBranch');
$app->run();
function addBranch() {
$request = Slim::getInstance()->request();
$branch = json_decode($request->getBody());
$sql = "INSERT INTO branch(branch_name, branch_address, branch_phno, branch_mobileno, branch_contactperson, branch_createdate, branch_modifieddate) VALUES (:branch_name,:branch_address, :branch_phno, :branch_mobileno, :branch_contactperson, :branch_createdate, :branch_modifieddate)";
try {
$db = getConnection();
$stmt = $db->prepare($sql);
$stmt->bindParam("branch_name", $branch->branch_name);
$stmt->bindParam("branch_address", $branch->branch_address);
$stmt->bindParam("branch_phno", $branch->branch_phno);
$stmt->bindParam("branch_mobileno", $branch->branch_mobileno);
$stmt->bindParam("branch_contactperson", $branch->branch_contactperson);
$stmt->bindParam("branch_createdate", $branch->branch_createdate);
$stmt->bindParam("branch_modifieddate", $branch->branch_modifieddate);
$stmt->execute();
$branch->branch_id = $db->lastInsertId();
$db = null;
echo json_encode($branch);
} catch(PDOException $e) {
echo '{"error":{"text":'. $e->getMessage() .'}}';
}
}
?>
Solution
Somewhere in your code you have a interceptor
for $httpProvider
which doesn't have a proper response error section, something like this :
(function () {
angular.module('App')
.config(['$httpProvider', httpProviderConfig]);
function httpProviderConfig($httpProvider) {
var interceptor = ['$rootScope', '$q', function ($rootScope, $q) {
return {
'responseError': function (rejection) {
return $q.reject(rejection);
}
};
}];
$httpProvider.interceptors.push(interceptor);
}
})();
Answered By - Exlord
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.