{"id":5836,"date":"2015-07-14T12:15:14","date_gmt":"2015-07-14T09:15:14","guid":{"rendered":"http:\/\/www.webcodegeeks.com\/?p=5836"},"modified":"2015-07-08T14:30:29","modified_gmt":"2015-07-08T11:30:29","slug":"remote-access-http-service-using-angularjs","status":"publish","type":"post","link":"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/","title":{"rendered":"Remote Access with $http service using AngularJS"},"content":{"rendered":"<p>Many a times you want to make an asynchronous invocation to the remote server from the client side JavaScript code. This can be achieved through the use of <code>$http<\/code> service. The article will demonstrate the basic use of <code>$http<\/code> service in AngularJS<\/p>\n<p>Think remote invocation, think <code>$http<\/code>. The <code>$http<\/code> service very neatly abstracts <code>XMLHttpRequest<\/code> object of the browser to enable you to perform remote invocations. It allows you to make a request to remote services in an AJAX style. The <code>$http<\/code> service can be directly injected in the controller or you could write your own custom service that can make use of <code>$http<\/code> service. Here is a quick code snippet that uses <code>$http<\/code>:<\/p>\n<pre class=\" brush:php\">\r\nangular.module('myApp.services',[]).service('courseService',\r\n    function($http) {\r\n\tthis.getCourse = function() {\r\n\t    return $http({method:'GET',url:'http:\/\/my-domain:8000\/course\/'});\r\n\t}\r\n    });\r\n<\/pre>\n<p>The <code>courseService<\/code> makes use of <code>$http<\/code> service that takes http request method and url as parameters. These parameters are defined as part of <code>config<\/code> object. We will discuss the config object shortly. You should note that <code>$http<\/code> pretty much models on <code>$q<\/code> service and returns you the promise object.<\/p>\n<p>For more information on <code>$q<\/code> and promise object, you can read <a title=\"Understanding asynchronous invocation with promise object\" href=\"http:\/\/techorgan.com\/understanding-asynchronous-invocation-with-promise-using-angularjs\/\" target=\"_blank\">here<\/a>. As with promise object, you could then make use of <code>then()<\/code> function that will take success and error callbacks as parameters. These callbacks will be called based on whether promise is resolved with success or rejected with error. The below code shows how the promise object returned from <code>$http<\/code> is handled.<\/p>\n<pre class=\" brush:php\">angular.module('myApp.controllers', []).\r\n  controller('MyController', function($scope, courseService) {\r\n      $scope.getCourse = function() {\r\n          courseService.getCourse().then(function(data) {\r\n  \t      $scope.result = data.data;\r\n\t  }, function(data) {\r\n\t      $scope.result = data.status;\r\n\t  });\r\n      }\r\n});<\/pre>\n<p>Once the request is processed using <code>$http<\/code>, it invokes either success callback or error callback based on whether the request returned successfully or not. All this happens asynchronously. The <code>data<\/code> parameter passed to these callback functions is an object that contains the following properties:<\/p>\n<p>\u2013 <em>data<\/em>: It is a response from the server<br \/>\n\u2013 <em>status<\/em>: It is an http status code (like 404, 200 etc)<br \/>\n\u2013 <em>config<\/em>: It is an object that was passed as a request parameter to the $http function<br \/>\n\u2013 <em>headers<\/em>: It is an object that contains headers returned by the server<\/p>\n<p>If you find the usage of <code>then()<\/code> function bit confusing, then you have the option to use <code>success()<\/code> and <code>error()<\/code> handler methods. See the example below that uses <code>success()<\/code> and <code>error<\/code> callbacks.<\/p>\n<pre class=\" brush:php\">angular.module('myApp.controllers', []).\r\n  controller('MyController', function($scope, courseService) {\r\n\t$scope.getCourse = function() {\r\n\t\tcourseService.getCourse().success(function(data, status, , headers) {\r\n\t\t\t$scope.result = data;\r\n\t\t}).error(function(data, status, config, headers) {\r\n\t\t\t$scope.result = status;\r\n\t\t});\r\n\t}\r\n});<\/pre>\n<p><strong>What\u2019s in the config object<\/strong><\/p>\n<p>The <code>config<\/code> object is the object that is passed as a parameter to the <code>$http<\/code> service. It represents http request and contains various http properties that can be set as part of the request.<br \/>\nSome of the important properties are:<\/p>\n<p>\u2013 <em>url<\/em>: This is the request url to the server resource. <code>$http<\/code> does not allow cross domain invocation. If you want to access remote server that has a different domain name then the server should have the <em>Access-Control-Allow-Origin<\/em> response header set.<br \/>\n\u2013 <em>method<\/em>: The is the http request method. The typical values are either <em>POST<\/em> or <em>GET<\/em>. But you could also use values like <em>PUT<\/em>, <em>DELETE<\/em> or other forms depending on what you want to achieve with the request.<br \/>\n\u2013 <em>data<\/em>: This is the request body. It is typically passed alongside http methods like <em>POST<\/em> or <em>PUT<\/em>. The data can be a simple string or an object.<br \/>\n\u2013 <em>headers<\/em>: A map object that takes key value as request headers.<br \/>\n\u2013 <em>params<\/em>: This is typically used with http method <em>GET<\/em> for passing query parameters which goes as part of URL.<\/p>\n<p>The below example shows URL query parameters and headers passed as part of <code>config<\/code> object.<\/p>\n<pre class=\" brush:php\">angular.module('myApp.services',[]).service('courseService',\r\n    function($http) {\r\n\tthis.getCourse = function() {\r\n\t    return $http({method:'GET',url:'http:\/\/my-domain:8000\/course\/',\r\n\t\t\tparams: {title:'Science'}, \r\n\t\t\theaders: {'Content-Type': 'text\/plain'}\r\n                });\r\n\t}\r\n    });<\/pre>\n<p>There are many other http properties associated with the <code>config<\/code> object. You could use them to suit your requirement.<\/p>\n<p><strong>$http made easy<\/strong><\/p>\n<p>There are other short-cut methods available with the $http service. They are as follows:<\/p>\n<p><em>$http.get()<\/em><br \/>\n<em>$http.post()<\/em><br \/>\n<em>$http.put()<\/em><br \/>\n<em>$http.delete()<\/em><br \/>\n<em>$http.head()<\/em><\/p>\n<p>All of the above methods takes URL as a parameter. The method post() and put() also takes additional request data parameter.<\/p>\n<pre class=\" brush:php\">angular.module('myApp.services',[]).service('courseService',\r\n    function($http) {\r\n        this.getCourse = function() {\r\n\t    return $http.get('http:\/\/my-domain:8000\/course\/');\r\n\t}\r\n    });<\/pre>\n<p>The <code>$http<\/code> service can be used for making REST style invocations. Its power is simplicity with which one can interact with the remote server.<\/p>\n<div class=\"attribution\">\n<table>\n<tbody>\n<tr>\n<td><span class=\"reference\">Reference: <\/span><\/td>\n<td><a href=\"http:\/\/techorgan.com\/remote-access-with-http-service-using-angularjs\/\">Remote Access with http service using AngularJS<\/a> from our <a href=\"http:\/\/www.webcodegeeks.com\/wcg\/\">WCG partner<\/a> Rajeev Hathi at the <a href=\"http:\/\/techorgan.com\/\">TECH ORGAN<\/a> blog.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Many a times you want to make an asynchronous invocation to the remote server from the client side JavaScript code. This can be achieved through the use of $http service. The article will demonstrate the basic use of $http service in AngularJS Think remote invocation, think $http. The $http service very neatly abstracts XMLHttpRequest object &hellip;<\/p>\n","protected":false},"author":91,"featured_media":909,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[25],"tags":[],"class_list":["post-5836","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-angular-js"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Remote Access with $http service using AngularJS - Web Code Geeks - 2026<\/title>\n<meta name=\"description\" content=\"Many a times you want to make an asynchronous invocation to the remote server from the client side JavaScript code. This can be achieved through the use\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Remote Access with $http service using AngularJS - Web Code Geeks - 2026\" \/>\n<meta property=\"og:description\" content=\"Many a times you want to make an asynchronous invocation to the remote server from the client side JavaScript code. This can be achieved through the use\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/\" \/>\n<meta property=\"og:site_name\" content=\"Web Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/webcodegeeks\" \/>\n<meta property=\"article:published_time\" content=\"2015-07-14T09:15:14+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/angularjs-logo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Rajeev Hathi\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@webcodegeeks\" \/>\n<meta name=\"twitter:site\" content=\"@webcodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Rajeev Hathi\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/\"},\"author\":{\"name\":\"Rajeev Hathi\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/a31899e91ce8c7e23aa3835a86bc749f\"},\"headline\":\"Remote Access with $http service using AngularJS\",\"datePublished\":\"2015-07-14T09:15:14+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/\"},\"wordCount\":629,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/angularjs-logo.jpg\",\"articleSection\":[\"Angular.js\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/\",\"url\":\"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/\",\"name\":\"Remote Access with $http service using AngularJS - Web Code Geeks - 2026\",\"isPartOf\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/angularjs-logo.jpg\",\"datePublished\":\"2015-07-14T09:15:14+00:00\",\"description\":\"Many a times you want to make an asynchronous invocation to the remote server from the client side JavaScript code. This can be achieved through the use\",\"breadcrumb\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/#primaryimage\",\"url\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/angularjs-logo.jpg\",\"contentUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/angularjs-logo.jpg\",\"width\":150,\"height\":150},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.webcodegeeks.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"JavaScript\",\"item\":\"https:\/\/www.webcodegeeks.com\/category\/javascript\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Angular.js\",\"item\":\"https:\/\/www.webcodegeeks.com\/category\/javascript\/angular-js\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Remote Access with $http service using AngularJS\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#website\",\"url\":\"https:\/\/www.webcodegeeks.com\/\",\"name\":\"Web Code Geeks\",\"description\":\"Web Developers Resource Center\",\"publisher\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.webcodegeeks.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\/\/www.webcodegeeks.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png\",\"contentUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/webcodegeeks\",\"https:\/\/x.com\/webcodegeeks\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/a31899e91ce8c7e23aa3835a86bc749f\",\"name\":\"Rajeev Hathi\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/7b3d1f5c751db08d0cecf939d205a54df4f1e8925989025e169b55425423fe40?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/7b3d1f5c751db08d0cecf939d205a54df4f1e8925989025e169b55425423fe40?s=96&d=mm&r=g\",\"caption\":\"Rajeev Hathi\"},\"description\":\"Rajeev is a senior Java architect and developer. He has been designing and developing business applications for various companies (both product and services). He is co-author of the book titled 'Apache CXF Web Service Development' and shares his technical knowledge through his blog platform techorgan.com\",\"sameAs\":[\"http:\/\/techorgan.com\/\"],\"url\":\"https:\/\/www.webcodegeeks.com\/author\/rajeev-hathi\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Remote Access with $http service using AngularJS - Web Code Geeks - 2026","description":"Many a times you want to make an asynchronous invocation to the remote server from the client side JavaScript code. This can be achieved through the use","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/","og_locale":"en_US","og_type":"article","og_title":"Remote Access with $http service using AngularJS - Web Code Geeks - 2026","og_description":"Many a times you want to make an asynchronous invocation to the remote server from the client side JavaScript code. This can be achieved through the use","og_url":"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/","og_site_name":"Web Code Geeks","article_publisher":"https:\/\/www.facebook.com\/webcodegeeks","article_published_time":"2015-07-14T09:15:14+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/angularjs-logo.jpg","type":"image\/jpeg"}],"author":"Rajeev Hathi","twitter_card":"summary_large_image","twitter_creator":"@webcodegeeks","twitter_site":"@webcodegeeks","twitter_misc":{"Written by":"Rajeev Hathi","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/#article","isPartOf":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/"},"author":{"name":"Rajeev Hathi","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/a31899e91ce8c7e23aa3835a86bc749f"},"headline":"Remote Access with $http service using AngularJS","datePublished":"2015-07-14T09:15:14+00:00","mainEntityOfPage":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/"},"wordCount":629,"commentCount":0,"publisher":{"@id":"https:\/\/www.webcodegeeks.com\/#organization"},"image":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/#primaryimage"},"thumbnailUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/angularjs-logo.jpg","articleSection":["Angular.js"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/","url":"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/","name":"Remote Access with $http service using AngularJS - Web Code Geeks - 2026","isPartOf":{"@id":"https:\/\/www.webcodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/#primaryimage"},"image":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/#primaryimage"},"thumbnailUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/angularjs-logo.jpg","datePublished":"2015-07-14T09:15:14+00:00","description":"Many a times you want to make an asynchronous invocation to the remote server from the client side JavaScript code. This can be achieved through the use","breadcrumb":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/#primaryimage","url":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/angularjs-logo.jpg","contentUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/angularjs-logo.jpg","width":150,"height":150},{"@type":"BreadcrumbList","@id":"https:\/\/www.webcodegeeks.com\/javascript\/angular-js\/remote-access-http-service-using-angularjs\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.webcodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"JavaScript","item":"https:\/\/www.webcodegeeks.com\/category\/javascript\/"},{"@type":"ListItem","position":3,"name":"Angular.js","item":"https:\/\/www.webcodegeeks.com\/category\/javascript\/angular-js\/"},{"@type":"ListItem","position":4,"name":"Remote Access with $http service using AngularJS"}]},{"@type":"WebSite","@id":"https:\/\/www.webcodegeeks.com\/#website","url":"https:\/\/www.webcodegeeks.com\/","name":"Web Code Geeks","description":"Web Developers Resource Center","publisher":{"@id":"https:\/\/www.webcodegeeks.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.webcodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.webcodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/www.webcodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/webcodegeeks","https:\/\/x.com\/webcodegeeks"]},{"@type":"Person","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/a31899e91ce8c7e23aa3835a86bc749f","name":"Rajeev Hathi","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/7b3d1f5c751db08d0cecf939d205a54df4f1e8925989025e169b55425423fe40?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/7b3d1f5c751db08d0cecf939d205a54df4f1e8925989025e169b55425423fe40?s=96&d=mm&r=g","caption":"Rajeev Hathi"},"description":"Rajeev is a senior Java architect and developer. He has been designing and developing business applications for various companies (both product and services). He is co-author of the book titled 'Apache CXF Web Service Development' and shares his technical knowledge through his blog platform techorgan.com","sameAs":["http:\/\/techorgan.com\/"],"url":"https:\/\/www.webcodegeeks.com\/author\/rajeev-hathi\/"}]}},"_links":{"self":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/posts\/5836","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/users\/91"}],"replies":[{"embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/comments?post=5836"}],"version-history":[{"count":0,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/posts\/5836\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/media\/909"}],"wp:attachment":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/media?parent=5836"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/categories?post=5836"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/tags?post=5836"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}