我正在尝试在 PHP 应用程序中使用敏锐.io。下面的代码在 Eclipse IDE 中运行良好,但显示从 chrome/firefox 重置连接。
任何帮助深表感谢。
- 我使用 phpunittest 断言实例工作正常。测试成功了。分析事件已在 js 客户端中验证,并且工作正常。
- 现在我尝试从 eclipse ide 创建一个调试配置文件并运行它,创建事件和分析事件都成功了
- 当我从 Chrome/firefox 尝试时没有响应。检查调试器显示无法加载资源:chrome 中的 net::ERR_CONNECTION_RESET
环境 PHP 版本为 5.5.12 WampServer Windows 8 Local Applicaion
编辑:我通过chrome和eclipse的xdebug插件进一步调试,发现代码在下面的方法中坏了
/vendor/guzzle/guzzle/src/Guzzle/Service/Command/AbstractCommand.php - 第 330 行,其中具有函数“受保护的函数 validate()”。
一旦我对此发表评论,一切似乎都很好。
这是代码
<?php
namespace KeenIO\Tests\Client;
require_once __DIR__ . '/vendor/autoload.php';
include('/Firebase/TokenException.php');
include('/Firebase/TokenGenerator.php');
use Firebase\Token\TokenException;
use Firebase\Token\TokenGenerator;
use KeenIO\Client\KeenIOClient;
use Guzzle\Tests\GuzzleTestCase;
class KeenIOClientTest extends GuzzleTestCase
{
public function testThisMightHaveADb()
{
$projectId = "544a8064072719342addb0d5";
$readKey = "b2ec296d6a26d7208af256ea28361bfa0bfd8d3ec2989a2650505596bd33251c96293c90a5dc5a0b476211c30f477436a5b6ef58aa59e4e5259ab8faed48f5c0f418d7754920642651ab97a53c213d38a649fb9278f114ddf64592eff78d53f269fffb334ebb093ba88fbdbc851e33fb";
$client = KeenIOClient::factory([
'projectId' => $projectId,
'writeKey' => $writeKey,
'readKey' => $readKey
]);
echo "done";
//Check that the Client is of the right type
$this->assertInstanceOf('\Guzzle\Service\Client', $client);
echo "1";
$this->assertInstanceOf('\KeenIO\Client\KeenIOClient', $client);
echo "2";
//Check that the pass config options match the client's config
$this->assertEquals($projectId, $client->getConfig('projectId'));
echo "3";
$this->assertEquals($writeKey, $client->getConfig('writeKey'));
$this->assertEquals($readKey, $client->getConfig('readKey'));
echo $client->getProjectId();
$average = $client->average("temprBugs", ["target_property" => "PF", "timeframe" => "previous_5_days"]);
print_r ($average);
}
}
$testObject = new KeenIOClientTest();
$testObject ->testThisMightHaveADb();
?>