无法使用 xmpphp 连接到 Facebook 聊天
Posted
技术标签:
【中文标题】无法使用 xmpphp 连接到 Facebook 聊天【英文标题】:Can't connect to facebook chat using xmpphp 【发布时间】:2013-09-15 18:10:21 【问题描述】:今天我想创建一个非常简单的 php 应用程序来与 facebook 朋友聊天,但被击中了,我正在使用 xmpphp 连接到 facebook 聊天。下面是我写的代码。
<?php
require_once("libs/facebook/src/facebook.php");
require_once("informations/facebook_info.php");
$facebook=new Facebook($config_facebook);
if($facebook->getUser())
//now connect to facebook chat api
require_once('libs/xmpphp/xmpphp/xmpp.php');
$accesstoken=$facebook->getAccessToken();
$con=new XMPPHP_XMPP('chat.facebook.com',5222,'my-id@facebook.com',$accesstoken,'xmpphp','chat.facebook.com');
$con->useEncryption=false;
$con->connect();
else
header("location:index.php");
?>
但它给我一个警告说:
警告:fclose() 期望参数 1 是资源,在第 405 行的 C:\wamp\www\libs\xmpphp\xmpphp\XMLStream.php 中给出 null
我错过了什么吗?
【问题讨论】:
我不能;在你的代码中看不到fclose
..
它是从核心类本身抛出的,不是我编码的......
【参考方案1】:
不要将 NULL
参数传递给 fclose()
。将句柄作为参数发送给它。
类似的东西
<?php
$handle = fopen('somefile.txt', 'r');
fclose($handle);
?>
【讨论】:
那部分代码包含,如下代码 if ($updated === false) $this->log->log("Error on stream_select()", XMPPHP_Log::LEVEL_VERBOSE); if ($this->reconnect) $this->doReconnect(); else fclose($this->socket); $this->socket = NULL;返回假; 如果一切都失败了,您可以使用@fclose($this->socket);
取消警告。但我不建议这样做。可以发fopen()
吗?
根本没有fopen,能不能先去看看xmpphp类,好复杂,看不懂……以上是关于无法使用 xmpphp 连接到 Facebook 聊天的主要内容,如果未能解决你的问题,请参考以下文章
无法通过 Facebook iOS SDK 连接到 Facebook
Strophe 无法通过 BOSH 服务器连接到 Facebook
Facebook无代码事件 - iOS应用程序无法连接到事件管理器
PHP中的Facebook Graph API出现不一致的错误 - 无法连接到graph.facebook.com端口443:连接超时