{"id":27365,"date":"2021-05-06T19:50:00","date_gmt":"2021-05-06T16:50:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=27365"},"modified":"2021-10-17T05:11:41","modified_gmt":"2021-10-17T02:11:41","slug":"hur-man-skapar-facebook-langlivad-atkomsttoken","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/sv\/hur-man-skapar-facebook-langlivad-atkomsttoken\/","title":{"rendered":"Hur man skapar Facebook l\u00e5nglivad \u00e5tkomsttoken"},"content":{"rendered":"<p>Har du n\u00e5gonsin st\u00f6tt p\u00e5 API-uppgifter? D\u00e5 har du f\u00f6rmodligen h\u00f6rt talas om &quot;Access Token&quot;. \u00c5tkomsttoken \u00e4r ett slags identitetstoken som sociala webbplatser (som Facebook) anv\u00e4nder f\u00f6r att utf\u00f6ra operationer f\u00f6r en anv\u00e4ndares r\u00e4kning.<\/p>\n<p>Med andra ord kan en applikation med giltig \u00e5tkomsttoken h\u00e4mta din v\u00e4nlista, posta p\u00e5 din v\u00e4gg, f\u00e5 dina grundl\u00e4ggande uppgifter som e-post, f\u00f6delsedatum osv. Naturligtvis m\u00e5ste du till\u00e5ta tillst\u00e5nd f\u00f6r alla dessa \u00e5tkomster. Utan din tillst\u00e5nd kan \u00e5tkomsttoken inte komma \u00e5t anv\u00e4ndarinformation.<\/p>\n<p>N\u00e4r vi pratar om Facebook API ger deras API tv\u00e5 typer av tokens: kortlivade och l\u00e5nglivade \u00e5tkomsttoken.<\/p>\n<p>Den kortlivade token har en kort tidsperiod. Det betyder att du inte kan ge API-samtal efter att token upph\u00f6r. Du f\u00e5r det obeh\u00f6riga svaret n\u00e4r token upph\u00f6r. Varje API-samtal kr\u00e4ver giltig \u00e5tkomsttoken som en parameter, d\u00e5 bara de skickar ett svar tillbaka.<\/p>\n<p>N\u00e4r token upph\u00f6rt m\u00e5ste du be anv\u00e4ndaren att g\u00e5 igenom inloggningsprocessen igen med din applikation.<\/p>\n<p>Det \u00e4r inte meningsfullt. Det \u00e4r typ av att g\u00f6ra en upprepad process som anv\u00e4ndaren inte gillar faktiskt.<\/p>\n<p>Det \u00e4r h\u00e4r vi ska anv\u00e4nda begreppet <a href=\"https:\/\/developers.facebook.com\/docs\/facebook-login\/access-tokens\/refreshing\/#generate-long-lived-token\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">L\u00e5nglivad \u00e5tkomsttoken f\u00f6r Facebook<\/a>. En l\u00e5nglivad token varar i allm\u00e4nhet cirka 60 dagar. Och det \u00e4r mycket b\u00e4ttre \u00e4n att anv\u00e4nda kortlivade tokens.<\/p>\n<p>Med detta sagt, l\u00e5t oss se hur man genererar en l\u00e5nglivad \u00e5tkomsttoken f\u00f6r Facebook.<\/p>\n<h3>Registrera en ans\u00f6kan<\/h3>\n<p>F\u00f6r att komma ig\u00e5ng m\u00e5ste du f\u00f6rst registrera en ans\u00f6kan p\u00e5 Facebook-utvecklare. Du f\u00e5r steg f\u00f6r steg guide om hur du registrerar och konfigurerar en app <a href=\"https:\/\/developers.facebook.com\/docs\/apps\/register\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">h\u00e4r<\/a>.<\/p>\n<p>N\u00e4r du registrerat appen kopierar du app-id och apphemlighet som vi beh\u00f6ver p\u00e5 ett \u00f6gonblick.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20729-6082209b36be8.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20729-6082209b36be8.png\" alt=\"Hur man skapar Facebook l\u00e5nglivad \u00e5tkomsttoken\" ><\/a><\/p>\n<h3>Skapa en l\u00e5nglivad \u00e5tkomsttoken<\/h3>\n<p>Nu har vi app-id och apphemliga nycklar. Skapa en fil som heter <code>config.php<\/code>och l\u00e4gg till v\u00e5ra nycklar med PHP definiera() -metoden.<\/p>\n<p><strong>config.php<\/strong><\/p>\n<pre><code>&lt;?php\ndefine('CLIENT_ID', 'YOUR_CLIENT_ID');\ndefine('CLIENT_SECRET', 'YOUR_CLIENT_SECRET');\ndefine('REDIRECT_URL', 'YOUR_SITE_URL\/redirect.php');\n?&gt;<\/code><\/pre>\n<p>I ovanst\u00e5ende kod angav vi REDIRECT_URL till YOUR_SITE_URL \/ redirect.php. S\u00e5 skapa filen <code>redirect.php<\/code>. Det h\u00e4r \u00e4r filen d\u00e4r vi kommer att skriva koden f\u00f6r att skapa en l\u00e5nglivad token.<\/p>\n<p>Men innan det m\u00e5ste vi skapa en inloggnings-URL som omdirigerar en anv\u00e4ndare till Facebook-inloggningssidan f\u00f6r att auktorisera din app. Skapa en fil <code>login.php<\/code>och l\u00e4gg till koden nedan i den.<\/p>\n<p><strong>login.php<\/strong><\/p>\n<pre><code>&lt;?php\nrequire_once \"config.php\";\necho \"&lt;a href='https:\/\/www.facebook.com\/v2.10\/dialog\/oauth?client_id=\". CLIENT_ID. \"&amp;redirect_uri=\". REDIRECT_URL. \"'&gt;Login To Facebook&lt;\/a&gt;\";\n?&gt;<\/code><\/pre>\n<p>N\u00e4r en anv\u00e4ndare klickar p\u00e5 l\u00e4nken f\u00f6r att logga in p\u00e5 Facebook omdirigeras de till Facebook-inloggningssidan. N\u00e4r de en g\u00e5ng till\u00e5ter din app kommer anv\u00e4ndaren att omdirigera till YOUR_SITE_URL \/ redirect.php. I geng\u00e4ld f\u00e5r vi en kod som en GET-parameter fr\u00e5n Facebook. Med hj\u00e4lp av detta kodv\u00e4rde genererar vi en f\u00f6rsta kortlivad \u00e5tkomsttoken. Och sedan genom denna kortlivade token genererar vi en l\u00e5nglivad \u00e5tkomsttoken.<\/p>\n<p>Se till att du har CURL-till\u00e4gg aktiverat p\u00e5 din server annars fungerar v\u00e5r kod inte som f\u00f6rv\u00e4ntat.<\/p>\n<p><strong>redirect.php<\/strong><\/p>\n<pre><code>&lt;?php\nrequire_once \"config.php\";\n\u00a0\nif (isset($_GET['code']) &amp;&amp; !empty($_GET['code'])) {\n\u00a0\u00a0\u00a0\u00a0$post = ['client_id'=&gt; CLIENT_ID, \"redirect_uri\" =&gt; REDIRECT_URL, \"client_secret\" =&gt; CLIENT_SECRET, 'code' =&gt; $_GET['code']];\n\u00a0\u00a0\u00a0\u00a0$arr_result = getFBResponse($post);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\/\/generate long-lived access token\n\u00a0\u00a0\u00a0\u00a0if (isset($arr_result-&gt;access_token)) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$post1 = ['grant_type' =&gt; 'fb_exchange_token', 'client_id'=&gt; CLIENT_ID, \"client_secret\" =&gt; CLIENT_SECRET, 'fb_exchange_token' =&gt; $arr_result-&gt;access_token ];\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$arr_result1 = getFBResponse($post1);\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0echo \"Long Lived Token: \". $arr_result1-&gt;access_token;\n\u00a0\u00a0\u00a0\u00a0}\n}\n\u00a0\nfunction getFBResponse($arr_post = []) {\n\u00a0\u00a0\u00a0\u00a0$ch = curl_init();\n\u00a0\u00a0\u00a0\u00a0curl_setopt($ch, CURLOPT_URL,'https:\/\/graph.facebook.com\/v2.10\/oauth\/access_token');\n\u00a0\u00a0\u00a0\u00a0curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);\n\u00a0\u00a0\u00a0\u00a0curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($arr_post));\n\u00a0\u00a0\u00a0\u00a0$response = curl_exec($ch);\n\u00a0\u00a0\u00a0\u00a0return json_decode($response);\n}\n?&gt;<\/code><\/pre>\n<p>Det \u00e4r allt! Vi hoppas att du fick veta om processen att generera en l\u00e5nglivad \u00e5tkomsttoken f\u00f6r Facebook API. Dela dina tankar i kommentarsektionen nedan.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Inspelningsk\u00e4lla:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Letar du efter att skapa en l\u00e5nglivad \u00e5tkomsttoken f\u00f6r Facebook? I den h\u00e4r artikeln studerar vi hur man skapar l\u00e5ngvarig \u00e5tkomsttoken via PHP och CURL.<\/p>\n","protected":false},"author":1,"featured_media":20730,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[279],"tags":[850],"class_list":["post-27365","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-10","tag-affiai-sv"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/sv\/wp-json\/wp\/v2\/posts\/27365","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/sv\/wp-json\/wp\/v2\/comments?post=27365"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/sv\/wp-json\/wp\/v2\/posts\/27365\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/sv\/wp-json\/wp\/v2\/media\/20730"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/sv\/wp-json\/wp\/v2\/media?parent=27365"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/sv\/wp-json\/wp\/v2\/categories?post=27365"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/sv\/wp-json\/wp\/v2\/tags?post=27365"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}