Facebook 应用程序 - 本地主机和强制 https 问题

标签 facebook https localhost facebook-javascript-sdk

我知道的另一个 Facebook 应用程序/API 帖子,但请仔细阅读。
为更清楚起见,我将在此处补充说,我们目前在 2021 年 3 月 29 日,他们的 API 在过去几个月中发生了很大变化(并且可能也会发生变化),因此 StackO 上的大多数答案不再有效.
此外,IMO 他们的文档还没有完全更新到当前版本,并且有一些不再存在的东西(例如 Dev/Live 模式)。
通过更改确保我的应用程序可以与我的本地主机一起使用后:

  • Settings -> Basic -> App Domains -> 'localhost'
  • Settings -> Basic -> Add platform -> Website -> 'http://localhost:8000/' )
  • Add Product -> Facebook Login -> leave everything empty
  • 确保使用 localhost 运行我的本地主机而不是 127.0.0.1 .

  • Facebook JavaScript SDK 似乎无法从 http 工作网址。
    当我在 localhost 上工作时(所以不在 http s 中),这很烦人。在查看 Facebook login 中的 FB 文档和一些工具提示后设置,好像是 localhost 应该在没有启用 https 的情况下工作。如果这还不够:Enforce HTTPS按钮呈灰色,无法再关闭。
    我也尝试在 Valid OAuth Redirect URIs 中放一些东西,但字段/工具提示不允许您输入 http://localhost:8000/ :

    http://localhost redirects are automatically allowed while in development mode only and do not need to be added here.


    如上所述,不再有开发模式这样的东西,或者至少没有按钮或任何可以改变的东西,甚至在他们的新界面上看到模式。
    有没有人设法让他的本地主机与 JS SDK 一起工作?
    Ngrok 和其他答案确实很受欢迎,但我想首先知道在这个问题上是否有一个“真正的”解决方案(在 FB 方面)(“不,还没有”是一个可以接受的答案,因为它可能会节省一个其他人有很多时间)。
    非常感谢!
    编辑:开发/实时模式的区别仍然存在,但仅适用于由个人开发人员开发的应用程序。对于业务应用程序,它们已被访问级别所取代。 (见评论,@CBroe)
    但是,我在不经商的情况下尝试过,但也没有奏效。

    最佳答案

    在 Facebook 方面,我的问题似乎没有任何解决方案,JavaScript 错误清楚地表明:

    The Login Button plugin no longer work on http pages. Please update your site to use https for Facebook login.


    由于错误中的链接指向博客文章(而不是文档),并且我在 FB 文档中没有找到与该问题相关的任何内容,所以......不能在 http 页面中使用它。
    因此,对于其他寻求解决方案的人,我会在 how to turn your localhost django app to run in https 上推荐另一个 StackO 线程。 (因为我正在与 Django 合作)。
    对于那些使用谷歌浏览器的人,按照上述线程,您需要关闭关于您的连接不是私有(private)的 Chrome 错误,方法如下:
  • 打开一个新标签
  • 粘贴:chrome://flags/#allow-insecure-localhost
  • 启用选项“允许从本地主机加载的资源的无效证书”。

  • 如果最终有办法让它工作,或者稍后从 FB 端更新,请随时为我的问题发布另一个解决方案。

    关于Facebook 应用程序 - 本地主机和强制 https 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66848225/

    相关文章:

    java - 如何使用 Facebook4J 获取 Facebook 速率限制 header ?

    Android 与 Facebook SharePhotoContent 分享图片 URL

    Java - 无法从网站获取 HTML 纯文本

    php - Curl 无法验证 Verisign 颁发的通配符 SSL 证书

    php - 脚本可以在本地主机上运行,​​但不能在服务器上运行

    java - 从 Android 的 Facebook API 的返回响应中获取特定数据

    javascript - 发送消息和在自己的墙上发帖功能不再有效

    c# - AS2 服务器 - 使用(现代)C# .NET 接收 AS2 消息

    git - 如何从现有项目在本地主机上设置裸 git 存储库?

    mysql - 如何修复 找不到适合 jdbc 的驱动程序 :mysql://localhost:3306/XXXX in netbeans