{"id":60,"date":"2009-10-16T19:25:11","date_gmt":"2009-10-16T19:25:11","guid":{"rendered":"http:\/\/sunny.byethost18.com\/WP\/?p=60"},"modified":"2009-10-16T19:25:11","modified_gmt":"2009-10-16T19:25:11","slug":"getting-starting-with-facebook-app-development","status":"publish","type":"post","link":"https:\/\/inullable.in\/blog\/?p=60","title":{"rendered":"Getting Started With Facebook App Development"},"content":{"rendered":"<p align=\"justify\"><a href=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image.png\"><img loading=\"lazy\" border=\"0\" alt=\"image\" align=\"right\" src=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_thumb.png\" width=\"133\" height=\"137\"\/><\/a>You all on facebook must have tried FB Quizzes and Apps. Nowadays, many are playing Mafia wars, Yoville and regularly going through funny and insane quizzes like &#8220;When will you die?&#8221; or in general playing &#8220;What? Why? When? Who?&#8221;.<\/p>\n<p align=\"justify\">In spite of being useless apps, multitude of people are rushing towards such apps&#8230;<\/p>\n<p align=\"justify\">don&#8217;t believe me! Have&nbsp; a look on stats of an application (A &#8220;who&#8221; quiz) that I launched,&nbsp; four days ago:<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\"><a href=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_3.png\"><img loading=\"lazy\" style=\"border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px\" border=\"0\" alt=\"image\" align=\"right\" src=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_thumb_3.png\" width=\"581\" height=\"491\"\/><\/a><\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\">but, look writing these applications are pretty straight right, and further with <a href=\"http:\/\/blog.facebook.com\/blog.php?post=2437282130\" target=\"_blank\">facebook platform API support<\/a>, it becomes a breeze, though it adds its own idiosyncrasies and difficulties. And with all that things comes an easy way to make money by showing ads, and other revenue models that&nbsp; can offer you considerable amount of money.<\/p>\n<p align=\"justify\"><strong><u><\/u><\/strong>&nbsp;<\/p>\n<p align=\"justify\"><strong><u><font size=\"5\">Getting Started<\/font><\/u><\/strong><\/p>\n<p align=\"justify\"><strong><u><font size=\"5\"><\/font><\/u><\/strong>&nbsp;<\/p>\n<p align=\"justify\"><strong><u>Add facebook developer application<\/u><\/strong><\/p>\n<p align=\"justify\">To start with, every developer who wants to develop facebook applications need to add &#8220;<a href=\"http:\/\/www.facebook.com\/developers\" target=\"_blank\">facebook developer application<\/a>&#8220;. [ Here, I assume you already have a valid facebook user account ]<\/p>\n<p><a href=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_4.png\"><img loading=\"lazy\" style=\"border-bottom: 0px; border-left: 0px; border-top: 0px; border-right: 0px\" border=\"0\" alt=\"image\" src=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_thumb_4.png\" width=\"281\" height=\"658\"\/><\/a> <\/p>\n<p>&nbsp;<\/p>\n<p><strong>A WebServer \/ web space running required middleware language<\/strong><\/p>\n<p align=\"justify\">Next you will need a web space (host) to host your application. A facebook application is basically a web application that communicates with facebook platform with its REST APIs.<\/p>\n<p align=\"justify\">These <a href=\"http:\/\/en.wikipedia.org\/wiki\/REST\" target=\"_blank\">REST<\/a> APIs functionality are available in the form of libraries for different platforms, that allows you to use facebook API without writing a lot of extra code. facebook has created there own <a href=\"http:\/\/wiki.developers.facebook.com\/index.php\/PHP\" target=\"_blank\">PHP client library<\/a>. <\/p>\n<p align=\"justify\">Other than that, there&nbsp; are plenty of <a href=\"http:\/\/wiki.developers.facebook.com\/index.php\/Client_Libraries\" target=\"_blank\">unofficial libraries<\/a> for supporting application development in your preferred language or framework.<\/p>\n<p align=\"justify\">I will be demonstrating here app development using the default PHP facebook API client library. <\/p>\n<p align=\"justify\"><strong>Facebook Application Architecture<\/strong><\/p>\n<p align=\"justify\"><a href=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_5.png\"><img loading=\"lazy\" border=\"0\" alt=\"Facebook Application Architecture copyrigths Apress Publishers\" src=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_thumb_5.png\" width=\"410\" height=\"524\"\/><\/a><\/p>\n<p align=\"justify\">Facebook provides your application to users when they request it through Facebook Application directory or follow some link pointing to your application. As you can see above, each time a Facebook user interacts with your application, It causes a series of server interactions with the Facebook server farm and your server. Each time a user requests something from your application&nbsp; through Facebook,&nbsp; that request is passed to your server to create the initial REST call to the Facebook API. Once your response to construct a display call (in FBML and HTML) and passes that back to the Facebook server. Facebook processes&nbsp; this information (the embedded FBML and JS) and creates an HTML response to the user. Because of the constant passing of information between servers,&nbsp; there&nbsp; is an additional level of complexity that can complicate tracking down bugs. You also need to consider this constant interaction when developing your application because you don\u2019t want to make unnecessary API calls that will slow down your application.<\/p>\n<p align=\"justify\"><strong>Download Client-Library<\/strong><\/p>\n<p align=\"justify\">As discussed earlier, you can choose one from many available client libraries available for your favourite language. We will be using official facebook <a href=\"http:\/\/wiki.developers.facebook.com\/index.php\/PHP\" target=\"_blank\">PHP Client Library<\/a>, for other languages you can get one from <a href=\"http:\/\/wiki.developers.facebook.com\/index.php\/Client_Libraries\" target=\"_blank\">unofficial libraries<\/a>.<\/p>\n<p align=\"justify\">Once you\u2019ve downloaded the library unzip it into a folder and upload to your webserver from where it is accessible by your PHP scripts. So you would have something like \/php_include_directory\/facebook\/ and in that folder you will have the entire Facebook PHP Client Library (folders: client, footprints, php4client). I\u2019m using PHP5 so my examples will be using the \u201cclient\u201d directory of the library. The client library contains files and folders shown below:<\/p>\n<p align=\"justify\"><a href=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_6.png\"><img loading=\"lazy\" border=\"0\" alt=\"image\" src=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_thumb_6.png\" width=\"637\" height=\"147\"\/><\/a><\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\"><strong>Create Your Application Profile And API Key<\/strong><\/p>\n<p align=\"justify\">go <a href=\"http:\/\/www.facebook.com\/developers\/#\" target=\"_blank\">here<\/a>, and create an application profile<\/p>\n<p align=\"justify\"><a href=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_7.png\"><img loading=\"lazy\" border=\"0\" alt=\"image\" src=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_thumb_7.png\" width=\"786\" height=\"658\"\/><\/a><\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p align=\"justify\"><strong>Choose a name for your application<\/strong>. This is important because it\u2019s what users will see when they are browsing the application directory. Currently the name field is the only thing used when searching for applications. So it\u2019s doubly important at this point.<\/p>\n<p align=\"justify\">&nbsp;<\/p>\n<p><a href=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_8.png\"><img loading=\"lazy\" style=\"border-bottom: 0px; border-left: 0px; border-top: 0px; border-right: 0px\" border=\"0\" alt=\"image\" src=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithF\nacebookAppDevelopmen_1C56\/image_thumb_8.png\" width=\"584\" height=\"338\"\/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>Next fill out the <strong>Canvas Callback Url<\/strong> with the location of your script. This is the public URL on your webserver where the Facebook application will be, also <strong>fill out the \u201cCanvas Page URL\u201d<\/strong>. This is your application URL within Facebook. For example if the application was called \u201cPlay the DemoApp \u201d then the application URL could be: \u201cDemoApp\u201d which would make the full URL: <a href=\"http:\/\/apps.facebook.com\/DemoApp\/\">http:\/\/apps.facebook.com\/DemoApp\/<\/a>.<\/p>\n<p>&nbsp;<\/p>\n<p><a href=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_9.png\"><img loading=\"lazy\" style=\"border-bottom: 0px; border-left: 0px; border-top: 0px; border-right: 0px\" border=\"0\" alt=\"image\" src=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_thumb_9.png\" width=\"647\" height=\"619\"\/><\/a><\/p>\n<blockquote>\n<p><strong>All of these settings can be changed anytime, even after the application has been created<\/strong>&nbsp;<\/p>\n<\/blockquote>\n<p>&nbsp;<\/p>\n<p><strong>Get the API Key and Secret<\/strong><\/p>\n<p><a href=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_10.png\"><img loading=\"lazy\" border=\"0\" alt=\"image\" src=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_thumb_10.png\" width=\"662\" height=\"185\"\/><\/a> <\/p>\n<p>You should never disclose the API Secret key (Hmm&#8230; Isn&#8217;t that what secret means?), the API key is used to uniquely identify your application and Secret is used for authentication purpose and during REST API calls.<\/p>\n<p>&nbsp;<\/p>\n<p>So far, we have selected a <a href=\"http:\/\/www.byethost.com\" target=\"_blank\">webserver<\/a> that supports your chosen middleware language (in our case PHP), now we can start writing our application.<\/p>\n<p><strong>Select your IDE<\/strong><\/p>\n<p>You can write your PHP applications on any suitable editor, even on notepad but that hearts a bit, so you can choose some common free or proprietary IDEs from <a href=\"http:\/\/en.wikipedia.org\/wiki\/List_of_integrated_development_environments_for_Python#PHP\" target=\"_blank\">here<\/a> on wikipedia, further in addition below is a list of some common IDEs:<\/p>\n<ul>\n<li>Crimson (<a href=\"http:\/\/www.crimsoneditor.com\/)\">http:\/\/www.crimsoneditor.com\/)<\/a>&nbsp; [Windows]<\/li>\n<li>ConTEXT (<a href=\"http:\/\/www.context.cx\/)\">http:\/\/www.context.cx\/)<\/a>&nbsp; [Windows]<\/li>\n<li>Dreamweaver (<a href=\"http:\/\/www.adobe.com\/products\/dreamweaver\/)\">http:\/\/www.adobe.com\/products\/dreamweaver\/)<\/a>&nbsp; [Windows, OS X]<\/li>\n<li>Eclipse PDT (<a href=\"http:\/\/www.eclipse.org\/pdt\/)\">http:\/\/www.eclipse.org\/pdt\/)<\/a>&nbsp; [Windows, OS X, *nix]<\/li>\n<li>EditPad Lite (<a href=\"http:\/\/www.editpadpro.com\/editpadlite.html)\">http:\/\/www.editpadpro.com\/editpadlite.html)<\/a>&nbsp; [Windows]<\/li>\n<li>Notepad++ (<a href=\"http:\/\/notepad-plus.sourceforge.net\/uk\/site.htm)\">http:\/\/notepad-plus.sourceforge.net\/uk\/site.htm)<\/a>&nbsp; [Windows]<\/li>\n<li>phpDesigner (<a href=\"http:\/\/www.mpsoftware.dk\/)\">http:\/\/www.mpsoftware.dk\/)<\/a>&nbsp; [Windows]<\/li>\n<li>PhpEd (<a href=\"http:\/\/www.nusphere.com\/products\/phped.htm)\">http:\/\/www.nusphere.com\/products\/phped.htm)<\/a>&nbsp; [Windows]<\/li>\n<li>PhpEdit (<a href=\"http:\/\/www.waterproof.fr\/)\">http:\/\/www.waterproof.fr\/)<\/a>&nbsp; [Windows]<\/li>\n<li>PHP Expert Editor (<a href=\"http:\/\/www.ankord.com\/phpxedit.html)\">http:\/\/www.ankord.com\/phpxedit.html)<\/a>&nbsp; [Windows]<\/li>\n<li>Quanta Plus (<a href=\"http:\/\/quanta.kdewebdev.org\/)\">http:\/\/quanta.kdewebdev.org\/)<\/a>&nbsp; [*nix]<\/li>\n<li>TextMate (<a href=\"http:\/\/macromates.com\/)\">http:\/\/macromates.com\/)<\/a>&nbsp; [OS X]<\/li>\n<\/ul>\n<p>So, lets make our Demo App, what it will do:<\/p>\n<ul>\n<li>It will ask for user authorization to allow fetching user information via APIs<\/li>\n<li>List some information about user<\/li>\n<\/ul>\n<pre class=\"csharpcode\">    &lt;?php\n        <span class=\"rem\">\/\/ Name: index.php<\/span>\n        <span class=\"rem\">\/\/ My Demo App<\/span>\n\n        <span class=\"rem\">\/\/ facebook API library<\/span>\n        require_once <span class=\"str\">'..\/facebook-platform\/php\/facebook.php'<\/span>;\n\n        <span class=\"rem\">\/\/ The API key + secret<\/span>\n        $api_key = <span class=\"str\">\"546dcaef3d4c5666c5eef65c4c15e196\"<\/span>;\n        $secret = <span class=\"str\">\"57secret57secret57secret57secret\"<\/span>;\n\n        <span class=\"rem\">\/\/ Create the object containing API Client<\/span>\n        $facebook = <span class=\"kwrd\">new<\/span> Facebook($api_key, $secret);\n\n        <span class=\"rem\">\/\/ Shows standard \"allow application\" dialog, if user has not authorized<\/span>\n        $user_id = $facebook-&gt;require_login();\n    ?&gt;\n\n    &lt;?php\n        <span class=\"rem\">\/\/ all API calls of form xxxx.function are called in the way xxxx_funtion in PHP API Client<\/span>\n        <span class=\"rem\">\/\/ call the users.getInfo facebook API<\/span>\n        <span class=\"rem\">\/\/ more details at http:\/\/wiki.developers.facebook.com\/index.php\/Users.getInfo<\/span>\n        $userdetails = $facebook-&gt;api_client-&gt;users_getInfo($user_id,<span class=\"str\">'name,pic,profile_url'<\/span>);\n        echo <span class=\"str\">\"&lt;h2&gt; Demo App &lt;\/h2&gt;\"<\/span>;\n        echo <span class=\"str\">\"&lt;img src='\"<\/span>.$userdetails[0][<span class=\"str\">'pic'<\/span>].<span class=\"str\">\"' \/&gt;\"<\/span>;\n        echo <span class=\"str\">\"&lt;br \/&gt;Name:\"<\/span>.$userdetails[0][<span class=\"str\">'name'<\/span>];\n        echo <span class=\"str\">\"&lt;br \/&gt;&lt;a href='\"<\/span>.$userdetails[0][<span class=\"str\">'profile_url'<\/span>].<span class=\"str\">\"' &gt;Go to profile&lt;\/a&gt;\"<\/span>;\n    ?&gt;<\/pre>\n<p><style type=\"text\/css\">.csharpcode, .csharpcode pre\n{\n\tfont-size: small;\n\tcolor: black;\n\tfont-family: consolas, \"Courier New\", courier, monospace;\n\tbackground-color: #ffffff;\n\t\/*white-space: pre;*\/\n}\n.csharpcode pre { margin: 0em; }\n.csharpcode .rem { color: #008000; }\n.csharpcode .kwrd { color: #0000ff; }\n.csharpcode .str { color: #006080; }\n.csharpcode .op { color: #0000c0; }\n.csharpcode .preproc { color: #cc6633; }\n.csharpcode .asp { background-color: #ffff00; }\n.csharpcode .html { color: #800000; }\n.csharpcode .attr { color: #ff0000; }\n.csharpcode .alt\n{\n\tbackground-color: #f4f4f4;\n\twidth: 100%;\n\tmargin: 0em;\n}\n.csharpcode .lnum { color: #606060; }\n<\/style>\n<\/p>\n<p>Save it as index.php and upload it under proper directory at your server, so that references to php client library are correct.Next, launch your browser, and type your application facebook application canvas url, it would be like: <a href=\"http:\/\/apps.facebook.com\/&lt;app-name\"><strong>http:\/\/apps.facebook.com\/&lt;app-name<\/strong><\/a><strong>&gt;<\/strong>When you will run it, you will see the following screen:<\/p>\n<p>&nbsp;<\/p>\n<p><a href=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_11.png\"><img loading=\"lazy\" border=\"0\" alt=\"image\" src=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_thumb_11.png\" width=\"646\" height=\"321\"\/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>This screen is a result of our following line of code<\/p>\n<p>$user_id = $facebook-&gt;require_login(); <\/p>\n<p>which causes facebook to show a standard prompt, through which our application gets permission to fetch user info from facebook profile datastore via API calls.<\/p>\n<p>Click <strong>Allow <\/strong>to continue using app.<\/p>\n<p>next we issue another API call:<\/p>\n<p>$userdetails = $facebook-&gt;api_client-&gt;users_getInfo<\/p>\n<p>This causes the REST API calls, and finally $userdetails contains the following value as an array:<\/p>\n<p><a href=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_12.png\"><img loading=\"lazy\" border=\"0\" alt=\"image\" src=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_thumb_12.png\" width=\"590\" height=\"172\"\/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>which&nbsp; we later print out using echo in out format:<\/p>\n<p><a href=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_13.png\"><img loading=\"lazy\" border=\"0\" alt=\"image\" src=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_thumb_13.png\" width=\"379\" height=\"198\"\/><\/a> <\/p>\n<p>It is to be noted that all facebook applications run on the facebook page and thus are allowed a fixed space called application canvas, the blue box marks the facebook canvas in snapshot below:<\/p>\n<p><a href=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_14.png\"><img loading=\"lazy\" border=\"0\" alt=\"image\" src=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_thumb_14.png\" width=\"640\" height=\"334\"\/><\/a><\/p>\n<p>(Click to enlarge)<\/p>\n<p><strong>Where to go from here:<\/strong><\/p>\n<p>What you have learned here are bare basics of FB App platform, for further information you can see following places:<\/p>\n<p>You can start playing with APIs without any need of coding by going to <a href=\"http:\/\/developer.facebook.com\/tools.php\" target=\"_blank\">developer tools<\/a>.<\/p>\n<p><a href=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_15.png\"><img loading=\"lazy\" border=\"0\" alt=\"image\" src=\"http:\/\/thewiredguy.com\/BlogImages\/GettingStartingWithFacebookAppDevelopmen_1C56\/image_thumb_15.png\" width=\"786\" height=\"597\"\/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p><u>Resources and Further Reading<\/u><\/p>\n<ul>\n<li><a href=\"http:\/\/developers.facebook.com\/\">Facebook Developers Site<\/a><\/li>\n<li><a href=\"http:\/\/wiki.developers.facebook.com\/index.php\/Main_Page\">Facebook Developers Wiki<\/a><\/li>\n<li><a href=\"http:\/\/www.sitepoint.com\/article\/developing-facebook-platform\">Developing with the Facebook Platform and PHP<\/a><\/li>\n<li><a title=\"Basic Facebook Application Architecture\" href=\"http:\/\/wiki.developers.facebook.com\/index.php\/Random_questions#Basic_Application_Architecture\">Basic Facebook Application Architecture<\/a><\/li>\n<li><a href=\"http:\/\/wiki.developers.facebook.com\/index.php\/Random_questions#URLS_in_my_application\">How URLs Are Handled Within An Application<\/a>\n<\/li>\n<li><a href=\"http:\/\/wiki.developers.facebook.com\/index.php\/Your_callback_page_and_you\">Understanding Your Callback Page<\/a><\/li>\n<\/ul>\n<p><u>Book<\/u>: Apress Facebook API Developers Guide (Mar 2008)<\/p>\n<p><u>Forums<\/u>: <a title=\"Forums\" href=\"http:\/\/forum.developers.facebook.com\/\">Facebook Forums<\/a><\/p>\n<p>Hope you like this post providing some insight of facebook application development, please comment your views and post any queries freely.<\/p>\n<p>Thanks for reading! \ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"<p>You all on facebook must have tried FB Quizzes and Apps. Nowadays, many are playing Mafia wars, Yoville and regularly going through funny and insane quizzes like &#8220;When will you die?&#8221; or in general playing &#8220;What? Why? When? Who?&#8221;. In spite of being useless apps, multitude of people are rushing towards such apps&#8230; don&#8217;t believe [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[41,141,211,241,271],"tags":[],"_links":{"self":[{"href":"https:\/\/inullable.in\/blog\/index.php?rest_route=\/wp\/v2\/posts\/60"}],"collection":[{"href":"https:\/\/inullable.in\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/inullable.in\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/inullable.in\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/inullable.in\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=60"}],"version-history":[{"count":0,"href":"https:\/\/inullable.in\/blog\/index.php?rest_route=\/wp\/v2\/posts\/60\/revisions"}],"wp:attachment":[{"href":"https:\/\/inullable.in\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=60"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/inullable.in\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=60"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/inullable.in\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=60"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}