{"id":2508,"date":"2019-02-21T19:46:08","date_gmt":"2019-02-21T14:16:08","guid":{"rendered":"https:\/\/www.idslogic.com\/blog\/?p=2508"},"modified":"2025-02-24T15:59:34","modified_gmt":"2025-02-24T10:29:34","slug":"how-to-set-page-response-status-404-for-custom-error-page-from-sitefinity-mvc-widget","status":"publish","type":"post","link":"https:\/\/www.idslogic.com\/blog\/how-to-set-page-response-status-404-for-custom-error-page-from-sitefinity-mvc-widget","title":{"rendered":"How to Set Page Response Status 404 for Custom Error Page from Sitefinity MVC Widget"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_72 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.idslogic.com\/blog\/how-to-set-page-response-status-404-for-custom-error-page-from-sitefinity-mvc-widget\/#I_tried_the_following_code_to_fix_custom_Error_Page_Issue\" title=\"I tried the following code to fix custom Error Page Issue\">I tried the following code to fix custom Error Page Issue<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.idslogic.com\/blog\/how-to-set-page-response-status-404-for-custom-error-page-from-sitefinity-mvc-widget\/#The_Following_Steps_Need_to_Done\" title=\"The Following Steps Need to Done\">The Following Steps Need to Done<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.idslogic.com\/blog\/how-to-set-page-response-status-404-for-custom-error-page-from-sitefinity-mvc-widget\/#Step_1-_Override_the_RestoreHttpContext\" title=\"Step 1- Override the RestoreHttpContext\">Step 1- Override the RestoreHttpContext<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.idslogic.com\/blog\/how-to-set-page-response-status-404-for-custom-error-page-from-sitefinity-mvc-widget\/#Step_2-_Register_on_Bootstrapped\" title=\"Step 2- Register on Bootstrapped\">Step 2- Register on Bootstrapped<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.idslogic.com\/blog\/how-to-set-page-response-status-404-for-custom-error-page-from-sitefinity-mvc-widget\/#Step_3-_Set_the_Status_Code_in_Your_Controller\" title=\"Step 3-\u00a0Set the Status Code in Your Controller\">Step 3-\u00a0Set the Status Code in Your Controller<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.idslogic.com\/blog\/how-to-set-page-response-status-404-for-custom-error-page-from-sitefinity-mvc-widget\/#Step_4-_Build_Your_Solution_and_Check_the_Error_Page_Status\" title=\"Step 4-\u00a0Build Your Solution and Check the Error Page Status.\">Step 4-\u00a0Build Your Solution and Check the Error Page Status.<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.idslogic.com\/blog\/how-to-set-page-response-status-404-for-custom-error-page-from-sitefinity-mvc-widget\/#Sign_up_our_Newsletter\" title=\"Sign up our Newsletter!\">Sign up our Newsletter!<\/a><\/li><\/ul><\/nav><\/div>\n<p><span style=\"font-size: 14pt;\">If you create any Sitefinity page as a custom error page using Sitefintiy MVC widget, the response status must be changed explicitly. The default is 200, instead of 404 or the error response status and this is misleading for the search engines and SEO practice. This is wrong for SEO. It should be 404.<\/span><\/p>\n<h2><span class=\"ez-toc-section\" id=\"I_tried_the_following_code_to_fix_custom_Error_Page_Issue\"><\/span><span style=\"color: #003366; font-size: 18pt;\"><strong>I tried the following code to fix custom Error Page Issue<\/strong><\/span><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><span style=\"font-size: 14pt;\"><em>public ActionResult Index()<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>{<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0 if (!SitefinityContext.IsBackend)<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0 {<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Response.Status = &#8220;404 Not Found&#8221;;<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Response.StatusCode = 404;<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0 }<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0 return View(&#8220;Default&#8221;);<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>}<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\">But the page is still returning the status code 200 instead of 404.<\/span><\/p>\n<p style=\"text-align: center;\"><span style=\"color: #ff0000; font-size: 14pt;\"><a style=\"color: #ff0000;\" href=\"\/blog\/open-redirect-protection-is-now-included-in-sitefinity-cms11-1-here-is-how-it-functions\">Open Redirect Protection Is Now Included in Sitefinity CMS11.1: Here Is How It Functions<\/a><\/span><\/p>\n<p><span style=\"font-size: 14pt;\">I spent few hours to finding the solution, but was not lucky so far. Then I created my own custom error widget using the following code and dragged it to the error page.<\/span><\/p>\n<p style=\"text-align: center;\"><span style=\"font-size: 14pt;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2509 size-full\" src=\"https:\/\/www.idslogic.com\/blog\/wp-content\/uploads\/2019\/03\/Sitefinity-Admin-Panel.png\" alt=\"Admin Panel Sitefiity\" width=\"739\" height=\"348\" srcset=\"https:\/\/www.idslogic.com\/blog\/wp-content\/uploads\/2019\/03\/Sitefinity-Admin-Panel.png 739w, https:\/\/www.idslogic.com\/blog\/wp-content\/uploads\/2019\/03\/Sitefinity-Admin-Panel-300x141.png 300w, https:\/\/www.idslogic.com\/blog\/wp-content\/uploads\/2019\/03\/Sitefinity-Admin-Panel-560x264.png 560w\" sizes=\"auto, (max-width: 739px) 100vw, 739px\" \/><\/span><\/p>\n<p><span style=\"font-size: 14pt;\">The\u00a0FeatherActionInvoker\u00a0is public and could be overridden. This way the reset of the http context could be extended and it works for Feather version 1.3.350.0 or later.<\/span><\/p>\n<h2><span class=\"ez-toc-section\" id=\"The_Following_Steps_Need_to_Done\"><\/span><span style=\"color: #008000; font-size: 18pt;\"><strong>The Following Steps Need to Done<\/strong><\/span><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"Step_1-_Override_the_RestoreHttpContext\"><\/span><span style=\"color: #003366; font-size: 16pt;\"><strong>Step 1- Override the RestoreHttpContext<\/strong><\/span><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><span style=\"font-size: 14pt;\">To override the RestoreHttpContext method of the FeatherActionInvoker, you can create class file in your Sitefinity solution and add the below code in your class file. Also add the required namespaces.<\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>namespace SitefinityWebApp<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>{<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0 public class FeatherActionInvokerCustom : FeatherActionInvoker<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0 {<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 protected override void RestoreHttpContext(string output, HttpContext initialContext)<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 {<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 this.PopulateResponseStatus(System.Web.HttpContext.Current, initialContext);<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 base.RestoreHttpContext(output, initialContext);<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 }<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 private void PopulateResponseStatus(HttpContext httpContext, HttpContext initialContext)<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 {\u00a0\u00a0<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 if (!SystemManager.IsDesignMode &amp;&amp; httpContext.Response.StatusCode != 200)<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 {<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 initialContext.Response.Status = httpContext.Response.Status;<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 initialContext.Response.StatusCode = httpContext.Response.StatusCode;<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 initialContext.Response.StatusDescription = httpContext.Response.StatusDescription;<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 }<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 }<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 internal static void Register()<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0{<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 ObjectFactory.Container.RegisterType&lt;IControllerActionInvoker, FeatherActionInvokerCustom&gt;();<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 }<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0 }<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>}<\/em><\/span><\/p>\n<hr \/>\n<h3><\/h3>\n<h3><span class=\"ez-toc-section\" id=\"Step_2-_Register_on_Bootstrapped\"><\/span><span style=\"color: #003366; font-size: 16pt;\"><strong>Step 2-<\/strong> <strong>Register on Bootstrapped<\/strong><\/span><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><span style=\"font-size: 14pt;\"><em>public class Global : System.Web.HttpApplication<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>{<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0 protected void Application_Start(object sender, EventArgs e)<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0 {<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Bootstrapper.Bootstrapped += Bootstrapper_Bootstrapped;<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0 }<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0 protected void Bootstrapper_Bootstrapped(object sender, EventArgs e)<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0 {<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 FeatherActionInvokerCustom.Register();<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0 }<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>}<\/em><\/span><\/p>\n<hr \/>\n<h3><span class=\"ez-toc-section\" id=\"Step_3-_Set_the_Status_Code_in_Your_Controller\"><\/span><span style=\"color: #003366; font-size: 16pt;\"><strong>Step 3-<\/strong>\u00a0<strong>Set the Status Code in Your Controller<\/strong><\/span><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><span style=\"font-size: 14pt;\"><em>public ActionResult Index()<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>{<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0 Response.Status = &#8220;404 Not Found&#8221;;<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0 Response.StatusCode = 404;<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0 Response.StatusDescription = &#8220;Not Found!&#8221;;<\/em><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><em>\u00a0\u00a0\u00a0 return View(&#8220;Default &#8220;);<\/em><\/span><\/p>\n<hr \/>\n<h3><span class=\"ez-toc-section\" id=\"Step_4-_Build_Your_Solution_and_Check_the_Error_Page_Status\"><\/span><span style=\"color: #003366; font-size: 16pt;\"><strong>Step 4-\u00a0<\/strong><strong>Build Your Solution and Check the Error Page Status.<\/strong><\/span><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><span style=\"font-size: 14pt;\">You would see the status code 404.<\/span><\/p>\n<blockquote>\n<p style=\"text-align: center;\"><span style=\"color: #ff0000; font-size: 14pt;\"><em><strong>&#8220;Happy Coding!! :)&#8221;<\/strong><\/em><\/span><\/p>\n<\/blockquote>\n<p style=\"text-align: left;\"><span style=\"color: #008000; font-size: 14pt;\"><strong>Contributed By:<\/strong><\/span><\/p>\n<p><span style=\"font-size: 14pt;\">Sunil Kumar<\/span><\/p>\n<hr \/>\n<div class=\"newsletter_form\">\n<h2><span class=\"ez-toc-section\" id=\"Sign_up_our_Newsletter\"><\/span>Sign up our Newsletter!<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<div class=\"emaillist\" id=\"es_form_f0-n1\"><form action=\"\/blog\/wp-json\/wp\/v2\/posts\/2508#es_form_f0-n1\" method=\"post\" class=\"es_subscription_form es_shortcode_form  es_ajax_subscription_form\" id=\"es_subscription_form_6a3a56090d90b\" data-source=\"ig-es\" data-form-id=\"0\"><div class=\"es-field-wrap\"><label>Name<br \/><input type=\"text\" name=\"esfpx_name\" class=\"ig_es_form_field_name\" placeholder=\"\" value=\"\" \/><\/label><\/div><div class=\"es-field-wrap\"><label>Email*<br \/><input class=\"es_required_field es_txt_email ig_es_form_field_email\" type=\"email\" name=\"esfpx_email\" value=\"\" placeholder=\"\" required=\"required\" \/><\/label><\/div><input type=\"hidden\" name=\"esfpx_form_id\" value=\"0\" \/><input type=\"hidden\" name=\"es\" value=\"subscribe\" \/>\n\t\t\t<input type=\"hidden\" name=\"esfpx_es_form_identifier\" value=\"f0-n1\" \/>\n\t\t\t<input type=\"hidden\" name=\"esfpx_es_email_page\" value=\"2508\" \/>\n\t\t\t<input type=\"hidden\" name=\"esfpx_es_email_page_url\" value=\"https:\/\/www.idslogic.com\/blog\/how-to-set-page-response-status-404-for-custom-error-page-from-sitefinity-mvc-widget\" \/>\n\t\t\t<input type=\"hidden\" name=\"esfpx_status\" value=\"Unconfirmed\" \/>\n\t\t\t<input type=\"hidden\" name=\"esfpx_es-subscribe\" id=\"es-subscribe-6a3a56090d90b\" value=\"e12a72702e\" \/>\n\t\t\t<label style=\"position:absolute;top:-99999px;left:-99999px;z-index:-99;\" aria-hidden=\"true\"><span hidden>Please leave this field empty.<\/span><input type=\"email\" name=\"esfpx_es_hp_email\" class=\"es_required_field\" tabindex=\"-1\" autocomplete=\"-1\" value=\"\" \/><\/label><input type=\"submit\" name=\"submit\" class=\"es_subscription_form_submit es_submit_button es_textbox_button\" id=\"es_subscription_form_submit_6a3a56090d90b\" value=\"Subscribe\" \/><span class=\"es_spinner_image\" id=\"spinner-image\"><img decoding=\"async\" src=\"https:\/\/www.idslogic.com\/blog\/wp-content\/plugins\/email-subscribers\/lite\/public\/images\/spinner.gif\" alt=\"Loading\" \/><\/span><\/form><span class=\"es_subscription_message \" id=\"es_subscription_message_6a3a56090d90b\" role=\"alert\" aria-live=\"assertive\"><\/span><\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>If you create any Sitefinity page as a custom error page using Sitefintiy MVC widget, the response status must be changed explicitly. The default is 200, instead of 404 or the error response status and this is misleading for the&#8230;<\/p>\n","protected":false},"author":1,"featured_media":2511,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[251],"tags":[226,762,763],"class_list":["post-2508","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-sitefinity","tag-sitefinity-development","tag-sitefinity-mvc","tag-sitefinity-mvc-widget"],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/www.idslogic.com\/blog\/wp-json\/wp\/v2\/posts\/2508","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.idslogic.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.idslogic.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.idslogic.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.idslogic.com\/blog\/wp-json\/wp\/v2\/comments?post=2508"}],"version-history":[{"count":5,"href":"https:\/\/www.idslogic.com\/blog\/wp-json\/wp\/v2\/posts\/2508\/revisions"}],"predecessor-version":[{"id":10611,"href":"https:\/\/www.idslogic.com\/blog\/wp-json\/wp\/v2\/posts\/2508\/revisions\/10611"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.idslogic.com\/blog\/wp-json\/wp\/v2\/media\/2511"}],"wp:attachment":[{"href":"https:\/\/www.idslogic.com\/blog\/wp-json\/wp\/v2\/media?parent=2508"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.idslogic.com\/blog\/wp-json\/wp\/v2\/categories?post=2508"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.idslogic.com\/blog\/wp-json\/wp\/v2\/tags?post=2508"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}