{"id":5448,"date":"2015-07-01T12:15:50","date_gmt":"2015-07-01T09:15:50","guid":{"rendered":"http:\/\/www.webcodegeeks.com\/?p=5448"},"modified":"2015-06-18T23:39:10","modified_gmt":"2015-06-18T20:39:10","slug":"handling-events-node-js","status":"publish","type":"post","link":"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/","title":{"rendered":"Handling Events with Node.js"},"content":{"rendered":"<p>The <em>events<\/em> module in Node allows you to emit and handle events. Lot of in-built modules (objects) in Node has the ability to emit or broadcast an event.<\/p>\n<p>For example, the <em>fs<\/em> or File stream module emits an event named \u2018data\u2019 every time the data is read from the stream. The objects that emit events are referred to as event emitters in Node terminology.<\/p>\n<p>The event, when emitted, is handled using a callback function. The below code shows handling the click event.<\/p>\n<pre class=\" brush:php\">obj.on('click', function() {\r\n    console.log('I am clicked');\r\n});<\/pre>\n<p>The event emitter framework models on Java based Observer pattern where an observer of an event is notified every time that event occurs.<\/p>\n<p>This article will show you how to emit and handle events using Node.js event API.<\/p>\n<p>The Node event handling framework deals with two types of entities: event emitter and event listener. There is clear separation of roles here. Event listener registers to the event emitter for a particular event and listens for that event. It is important to note that event listeners can be many i.e. more than one listener can be registered for a particular event.<\/p>\n<p>When you emit an event, you are essentially emitting an event type that is defined as string. As you can see from the above code, \u2018click\u2019 is the event type defined as string. Names of the event are user defined and one can choose the name of the event based on the action or the state of an object.<\/p>\n<p>To use event handling with Node, you have to install and use <em>events<\/em> module. The below code makes use of <em>events<\/em> module to show a simple event handling<\/p>\n<pre class=\" brush:php\">var e = new (require('events').EventEmitter)();\r\ne.on('greet', function() {\r\n\tconsole.log('hello world');\r\n});\r\ne.emit('greet');<\/pre>\n<p>The above code first loads the <code>events<\/code> module and creates the <code>EventEmitter<\/code> object. It then emits event using the <code>emit()<\/code> function. The event type is \u2018greet\u2019. The <code>on()<\/code> function is used to handle \u2018greet\u2019 event by attaching an anonymous callback function as a second argument. Once the \u2018greet\u2019 event is emitted, the callback function is invoked.<\/p>\n<p>There is also a special event type called as \u2018error\u2019. This event can be emitted when there is an error condition. If you choose not to handle this error event, then Node event emitter will throw and print error stack trace. The below revised code shows the \u2018error\u2019 event.<\/p>\n<pre class=\" brush:php\">var e = new (require('events').EventEmitter)();\r\ne.on('greet', function() {\r\n\tconsole.log('hello world');\r\n});\r\ne.on('error', function() {\r\n\tconsole.log('It is an error');\r\n});\r\ne.emit('greet');\r\ne.emit('error');<\/pre>\n<p>As you can see, the \u2018error\u2019 event is handled appropriately. If you choose not to handle error event, then it will throw and display the error trace as follows:<br \/>\n<a href=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2015\/06\/node-error-event-trace.jpg\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-5452\" src=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2015\/06\/node-error-event-trace.jpg\" alt=\"node-error-event-trace\" width=\"524\" height=\"196\" srcset=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2015\/06\/node-error-event-trace.jpg 524w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2015\/06\/node-error-event-trace-300x112.jpg 300w\" sizes=\"(max-width: 524px) 100vw, 524px\" \/><\/a><br \/>\nWhat this means is, you can emit any arbitrary events and choose not to handle it. The program will work just fine. But for the error event, you must handle it.<\/p>\n<h3>Passing parameter to callback<\/h3>\n<p>The event can also be handled with one or more parameter passed to the callback function. While emitting an event, you specify what data to be passed to the callback function. The below code demonstrates the same:<\/p>\n<pre class=\" brush:php\">var e = new (require('events').EventEmitter)();\r\ne.on('greet', function(data) {\r\n\tconsole.log('hello ' + data);\r\n});\r\ne.emit('greet', 'world');<\/pre>\n<p>In the above code, you pass the value \u2018world\u2019 while emitting the event. It is then handled in the callback function by passing it as an argument.<\/p>\n<p>The Node event emitter API also provides the following functions:<\/p>\n<p><strong>addListener()<\/strong> \u2013 To add an event listener to a particular event<br \/>\n<strong>once()<\/strong> \u2013 To add an event listener to a particular event that will be invoked at most once<br \/>\n<strong>removeEventListener()<\/strong> \u2013 Removes a specific event listener for a specified event<br \/>\n<strong>removeAllListeners()<\/strong> \u2013 Removes all event listeners for a specified event<\/p>\n<h3>Using addListener<\/h3>\n<p>With <code>addListener<\/code> method you can bind a named callback function. The below code shows how a named callback is used with <code>addListener()<\/code> method.<\/p>\n<pre class=\" brush:php\">var e = new (require('events').EventEmitter)();\r\nfunction sayHello() {\r\n\tconsole.log('hello world');\r\n}\r\ne.addListener('greet', sayHello);\r\ne.emit('greet', 'John');<\/pre>\n<p>In the above code, we are using <code>sayHello<\/code> named function. Though you can still use inline anonymous callback function with <code>addListener()<\/code> method, just like the <code>on()<\/code> method.<\/p>\n<p>That was brief about event handing in Node. You can play around with different Node modules and check the API doc to see what events they emit and handle them accordingly.<\/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\/handling-events-with-node-js\/\">Handling Events with Node.js<\/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>The events module in Node allows you to emit and handle events. Lot of in-built modules (objects) in Node has the ability to emit or broadcast an event. For example, the fs or File stream module emits an event named \u2018data\u2019 every time the data is read from the stream. The objects that emit events &hellip;<\/p>\n","protected":false},"author":91,"featured_media":924,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[26],"tags":[],"class_list":["post-5448","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-node-js"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Handling Events with Node.js - Web Code Geeks - 2026<\/title>\n<meta name=\"description\" content=\"The events module in Node allows you to emit and handle events. Lot of in-built modules (objects) in Node has the ability to emit or broadcast an event.\" \/>\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\/node-js\/handling-events-node-js\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Handling Events with Node.js - Web Code Geeks - 2026\" \/>\n<meta property=\"og:description\" content=\"The events module in Node allows you to emit and handle events. Lot of in-built modules (objects) in Node has the ability to emit or broadcast an event.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/\" \/>\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-01T09:15:50+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/nodejs-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\/node-js\/handling-events-node-js\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/\"},\"author\":{\"name\":\"Rajeev Hathi\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/a31899e91ce8c7e23aa3835a86bc749f\"},\"headline\":\"Handling Events with Node.js\",\"datePublished\":\"2015-07-01T09:15:50+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/\"},\"wordCount\":656,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/nodejs-logo.jpg\",\"articleSection\":[\"Node.js\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/\",\"url\":\"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/\",\"name\":\"Handling Events with Node.js - Web Code Geeks - 2026\",\"isPartOf\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/nodejs-logo.jpg\",\"datePublished\":\"2015-07-01T09:15:50+00:00\",\"description\":\"The events module in Node allows you to emit and handle events. Lot of in-built modules (objects) in Node has the ability to emit or broadcast an event.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/#primaryimage\",\"url\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/nodejs-logo.jpg\",\"contentUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/nodejs-logo.jpg\",\"width\":150,\"height\":150},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/#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\":\"Node.js\",\"item\":\"https:\/\/www.webcodegeeks.com\/category\/javascript\/node-js\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Handling Events with Node.js\"}]},{\"@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":"Handling Events with Node.js - Web Code Geeks - 2026","description":"The events module in Node allows you to emit and handle events. Lot of in-built modules (objects) in Node has the ability to emit or broadcast an event.","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\/node-js\/handling-events-node-js\/","og_locale":"en_US","og_type":"article","og_title":"Handling Events with Node.js - Web Code Geeks - 2026","og_description":"The events module in Node allows you to emit and handle events. Lot of in-built modules (objects) in Node has the ability to emit or broadcast an event.","og_url":"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/","og_site_name":"Web Code Geeks","article_publisher":"https:\/\/www.facebook.com\/webcodegeeks","article_published_time":"2015-07-01T09:15:50+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/nodejs-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\/node-js\/handling-events-node-js\/#article","isPartOf":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/"},"author":{"name":"Rajeev Hathi","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/a31899e91ce8c7e23aa3835a86bc749f"},"headline":"Handling Events with Node.js","datePublished":"2015-07-01T09:15:50+00:00","mainEntityOfPage":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/"},"wordCount":656,"commentCount":0,"publisher":{"@id":"https:\/\/www.webcodegeeks.com\/#organization"},"image":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/#primaryimage"},"thumbnailUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/nodejs-logo.jpg","articleSection":["Node.js"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/","url":"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/","name":"Handling Events with Node.js - Web Code Geeks - 2026","isPartOf":{"@id":"https:\/\/www.webcodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/#primaryimage"},"image":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/#primaryimage"},"thumbnailUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/nodejs-logo.jpg","datePublished":"2015-07-01T09:15:50+00:00","description":"The events module in Node allows you to emit and handle events. Lot of in-built modules (objects) in Node has the ability to emit or broadcast an event.","breadcrumb":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/#primaryimage","url":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/nodejs-logo.jpg","contentUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/nodejs-logo.jpg","width":150,"height":150},{"@type":"BreadcrumbList","@id":"https:\/\/www.webcodegeeks.com\/javascript\/node-js\/handling-events-node-js\/#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":"Node.js","item":"https:\/\/www.webcodegeeks.com\/category\/javascript\/node-js\/"},{"@type":"ListItem","position":4,"name":"Handling Events with Node.js"}]},{"@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\/5448","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=5448"}],"version-history":[{"count":0,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/posts\/5448\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/media\/924"}],"wp:attachment":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/media?parent=5448"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/categories?post=5448"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/tags?post=5448"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}