quasark / stellar-crawler
Stellar网络的只读API
Requires
- php: >=5.3
This package is not auto-updated.
Last update: 2024-09-29 03:20:47 UTC
README
这是一个简单的Stellar网络只读PHP API。
依赖项
此库没有依赖项。
安装
安装选项1:Phar
适用场景:快速开发或小型项目 StellarCrawler提供了一个包含整个库的PHP存档文件。只需下载此文件并在您的代码中包含它。
<?php // Point to where you downloaded the phar include('./StellarCrawler.phar'); // And you're ready to go! $publicKey = 'GXXXXXXX123456789XXX'; $isPublicNetwork = true; $crawler = StellarCrawler::newInstance($publicKey, $isPublicNetwork); ...
安装选项2:Composer
适用场景:已经支持Composer的项目,这是PEAR的合理替代品。
Composer正开始成为PHP真正的“人民包管理器”。如果您还没有使用它,您应该尝试一下。只需在您的composer.json文件中将quasark/stellar-crawler添加到require,如下所示。完成此操作后,您就可以开始使用Httpful了!Composer提供的自动加载器将处理其余的工作!
{ "require": { "quasark/stellar-crawler": "*" } }
基本用法
实例化
首先,您需要使用newInstance工厂方法实例化您的crawler。
$publicKey = 'GXXXXXXX123456789XXX'; $isPublicNetwork = true; $crawler = StellarCrawler::newInstance($publicKey, $isPublicNetwork);
导航
然后,您可以使用StellarLink对象提供的follow()方法在Stellar网络中进行导航。
$crawler->getlinks()['next']->follow(); var_dump($crawler->getData()); $crawler->followPrev();
还有一些辅助方法可以轻松进行导航。
//Follow the next link $crawler->followNext(); //Follow the prev link $crawler->followPrev(); //Go back to the previous page $crawler->followBack();
检查数据
当您导航到您喜欢的页面时,您可以使用getData()方法检索数据。
var_dump($crawler->getData());
高级用法
使用自定义horizon服务器进行实例化
API提供了另一种实例化StellarCrawler的方法。公共工厂方法newInstanceWithServer允许使用自定义horizon服务器实例化crawler。
$publicKey = 'GXXXXXXX123456789XXX'; $horizonServer = 'https://horizon-testnet.stellar.org'; $crawler = StellarCrawler::newInstanceWithServer($publicKey, $horizonServer);
历史记录
StellarCrawler API提供了一种历史记录机制,以便跟踪您在Stellar网络中的旅程。使用历史记录机制最简单的方法是调用followBack()方法。但您可以通过调用getHistory()检索完整的历史记录。
var_dump($crawler->getHistory());
此方法返回一个表示导航历史的StellarLink数组。
属性描述
StellarCrawler->getlinks()包含一个数组,其中
- 键:链接名称(例如:交易)
- 链接:在导航过程中使用的链接对象
StellarCrawler->getData()包含Stellar网络发送的数据的JSON表示
var_dump($crawler->getData());
StellarCrawler->getHistory()包含表示导航历史的StellarLink数组
StellarCrawler->followNext()如果可用则跟随'next'链接。如果当前页面不包含'next'链接,将抛出StellarCrawlerException。 此方法与使用StellarCrawler->getlinks()['next']->follow();相同
StellarCrawler->followPrev()如果可用则跟随'prev'链接。如果当前页面不包含'prev'链接,将抛出StellarCrawlerException。 此方法与使用StellarCrawler->getlinks()['prev']->follow();相同
StellarCrawler->followBack() 如果存在,则跟随 'back' 链接。如果当前页面不包含 'back' 链接,则抛出 StellarCrawlerException 异常。 此方法与使用 StellarCrawler->getlinks()['back']->follow(); 相同
请参阅示例以获取更多信息。
捐赠
欢迎 XLM 捐赠! : GC6ZIWMTBZZ54VWX6SJH4JEHRHWSE245O2EIW26CMGAS6PM2R4J6V4PH
许可
GNU 通用公共许可证 v3.0