当前位置: 首页 > 知识库问答 >
问题:

网页中的Like和Share按钮导致javascript警告和php错误

楚翰
2023-03-14

我在一个网页上添加了基本的Facebook“like/share”按钮,使用的是直接从Facebook开发者页面复制的代码。代码有两个部分:一个javascript块和一个带有“类FB-like”类的div标记

<div id="fb-root"></div><script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

下面是我希望按钮出现的地方的div标记:

<div class="fb-like" data-href="http://www.bethcake.com" data-width="90" data-layout="button_count" data-action="like" data-show-faces="false" data-share="true"></div>

下面是我遇到的问题:

> 代码,第233行,而不是我编写的任何代码。它们是: <="">

    调用fb.init()./li>之前调用了

同样在页面加载时,我得到一个php错误(如.php.1:948):

这个错误令人费解。首先,我不使用框架。其次,协议确实匹配,这里没有任何关于端口的内容。当然,这些域名并不匹配:我并不是要为一个Facebook页面收集“赞”;我想获得一个外部网站页面“喜欢”。我是不是漏掉了什么?

我通过Facebook Open Graph对象调试器运行URL。它提出了一些我不明白的警告。它们是:

    应显式提供

好吧,好吧。但是我应该在哪里和怎么添加这些呢?我浏览了Facebook文档,搜索了stackoverflow,但没有成功。如果假设将这些添加到div标记中的data-href字符串中,请给我举个例子。

共有3个答案

於乐
2023-03-14

正如@smohajer上面指出的,您需要添加appId,但是使用新的SDK,您需要做一些小的更改,否则您会看到一些错误或警告:

js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&appId=1234567891234567&version=v2.2";

您必须在2015年4月30日之前升级:https://developers.facebook.com/docs/apps/upgrading

郎刚捷
2023-03-14

希望你已经解决了这个问题。

但如果这是对某人的帮助,则此答案有助于了解在调用fb.init()之前调用的“fb.getLoginStatus()”-&>https://stackoverflow.com/A/16593474

西门高歌
2023-03-14

null

js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";

js.src = "//connect.facebook.net/en_US/all.js#xfbml=1&appId=1234567891234567";

要获取facebook appId,请访问:https://developers.facebook.com/apps

 类似资料:
  • 问题内容: 我收到了预期的通知和警告,并希望在我的PHP文件中将其关闭。错误是: 通知是: 我打算将cron用于此PHP脚本,并且不想在任何地方记录任何错误或通知。 问题答案: 当您确定脚本可以正常运行时,可以摆脱以下警告和注意事项:将以下行放在PHP脚本的开头: 在此之前,我建议您在处理脚本时正确调试脚本,以使所有注意事项或警告都一一消失。 因此,您应该首先使用以下命令将其设置为尽可能详细: 更

  • 如果提到经常被开发者忽略的特性,那应该就是动态输出错误和提醒的功能了。事实上,Sass 自带三条自定义指令从标准输出系统(CLI,编译程序……)中打印内容: @debug; @warn; @error. 先让我们把 @debug 放一边,毕竟它主要是用作调试 SassScript,而这并不是我们的重点。然后我们就剩下了相互间没有明显差异的 @warn 和 @error,唯一的不同是其中一个可以中断

  • 因为ASP.NET核心剃刀页不再支持指令,所以我一直使用指令。 这似乎有效,但我得到一个错误: ...\razor\pages\tasks\index.cshtml.g.cs(286,200,286,202):警告CS1998:此异步方法缺少“await”运算符,将同步运行。考虑使用'await'运算符来等待非阻塞API调用,或者使用'await task.run(...)'在后台线程上执行CPU

  • 我对JavaFX仍然非常陌生,目前正在从在线教程中学习。我一直在尝试为一个类项目构建一个计算器,并且在大多数情况下,它似乎可以工作......直到按下清除按钮。一旦按下,清除按钮会导致所有操作符按钮不再起作用,当用户尝试单击一个按钮时,我会收到非常大的错误字符串。 这是此错误列表: 以下是我的.java类: 这是我的FXML文件: 知道是什么导致了这种情况的发生吗?

  • 运行时错误和警告发生在SystemTap安装了检测代码并开始收集数据的时候。 ⁠WARNING: Number of errors: N, skipped probes: M 在运行时出错并/或跳过某些探针。由于诸如给定时间不足以执行完处理程序的原因,某些探针没有得到执行,N和M就是这些探针的数目。 ⁠division by 0 代码里出现了除零错误。 ⁠aggregate element not

  • 我有一个Angular的表单,里面有两个按钮标签。一个按钮提交上的表单。另一个按钮是纯导航使用。然而,当点击第二个按钮时,AngularJS会导致页面刷新,从而触发404。我在函数中删除了一个断点,它正在触发我的函数。如果我执行以下任何操作,它将停止: 如果我删除,则该按钮不会导致页面刷新 如果我注释掉函数中的代码,它不会导致页面刷新 如果我将按钮标记更改为锚定标记(