脸谱网应用:localhost不再作为应用程序域

在过去,开发者在本地开发和测试脸谱网应用时,通常使用 localhost 作为应用程序域。然而,最近脸谱网宣布将不再支持使用 localhost 作为应用程序域了。

这个变化的原因是,使用 localhost 作为应用程序域可能会导致一些安全问题,例如攻击者可以使用 iframe 将您的应用嵌入到他们自己的网站中,并通过 JavaScript 访问您的应用数据。为了防止这种情况的发生,脸谱网要求所有应用都要使用 HTTPS 来保证安全性。

现在我们来看看如何修改我们的应用程序域以适应这个变化。

修改应用程序域

首先,在 开发者面板 中打开您的应用,然后转到“设置”->“基本信息”页面。在“基本信息”下方的“应用程序域”部分修改为您拥有的域名。如果您没有一个可用的域名,您可以使用 ngrok 创建一个本地 HTTPS 隧道并将其用于测试和开发。

注意,如果您的应用仅在本地进行开发和测试,您可以使用一个伪造的域名,例如 myapp.test,但是当您上线应用时,您必须使用真实的、已经验证的域名。

更新回调URL

在“设置”->“基本信息”页面下方的“回调URL”中,将它们改为 HTTPS URL,并确保与您的应用程序域相匹配。例如,如果您的应用程序域是 myapp.com,则回调URL应该是https://myapp.com/callback。

示例代码

以下是一个使用 Node.js 和 Express 框架的示例,以将应用程序域更改为 myapp.test。请记得替换为您自己的应用程序 ID 和秘钥。

----- ------- - -------------------
----- --- - ----------

----- ------ - --------------
----- ---------- - ------------------

-- --------- ----------
----- ---------- - ---------------------

-- -- ------- ------ -----
------------- ---- ----- -- -
  -- ------------ -
    -------
  - ---- -
    ------------------------------------------------------
  -
---

-- -- -------- --
-------------------------- ----- ---- -- -
  ----- ----------- - ---------------------------------------
  ----- -------- - ----------------------------------------------------------------------------------------------

  -----------------------
---

-- -- -------- --
---------------------------------- ----- ---- -- -
  ----- ---- - ---------------
  ----- ----------- - ---------------------------------------
  ----- -------- - -----------------------------------------------------------------------------------------------------------------------------------------------

  -- -- ----- ------
  -- ------
---

---------------- -- -- -
  ---------------- --------- -- ---- --------
---

结论

尽管这个变化可能会对一些开发者造成不便,但它确实有效地提高了脸谱网应用的安全性。通过遵循上述步骤,您可以轻松地将您的应用程序域从 localhost 更改为 HTTPS URL,并继续在本地开发和测试您的应用。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/11497