mailoman/nasa-neows-client-apimatic

0.0.1 2017-07-14 12:24 UTC

This package is auto-updated.

Last update: 2024-09-26 05:02:55 UTC


README

希望这是最终的修改

如何构建

生成的代码依赖于外部库,如UniRest。这些依赖项在SDK附带的composer.json文件中定义。要解决这些依赖项,我们需要使用Composer包管理器,这要求您的系统上安装了PHP 5.3.2或更高版本。请访问https://getcomposer.org/download/下载Composer安装程序文件,并在您的系统上运行它。打开命令提示符并输入composer --version。如果安装成功,这将显示已安装的Composer的当前版本。

  • 使用命令行,导航到包含生成的文件(包括composer.json)的SDK目录。
  • 运行命令composer install。这将安装所有必需的依赖项,并在您的项目目录中创建vendor目录。

Building SDK - Step 1

[仅限Windows用户] 在php.ini中配置CURL证书路径

CURL曾经包含一个接受CA的列表,但现在不再捆绑任何CA证书。因此,默认情况下,它将拒绝所有SSL证书,因为无法验证。您需要获取您的CA证书并将curl指向它。步骤如下

  1. https://curl.haxx.se/docs/caextract.html下载证书捆绑包(.pem文件)到您的系统。
  2. 将curl.cainfo = "PATH_TO/cacert.pem"添加到您的php.ini文件中,该文件位于您的PHP安装目录中。"PATH_TO"必须是一个包含.pem文件的绝对路径。
[curl]
; A default value for the CURLOPT_CAINFO option. This is required to be an
; absolute path.
;curl.cainfo =

如何使用

以下部分解释了如何在新的项目中使用SwaggerAPI库。

1. 在IDE中打开项目

打开PHP的IDE,如PhpStorm。这里展示的基本工作流程也适用于您更喜欢使用不同编辑器或IDE的情况。

Open project in PHPStorm - Step 1

在PhpStorm中,点击打开,浏览到生成的SDK目录,然后点击确定

Open project in PHPStorm - Step 2

2. 添加新的测试项目

如下所示,在解决方案名称上右键单击以创建新目录

Add a new project in PHPStorm - Step 1

将目录命名为"test"

Add a new project in PHPStorm - Step 2

向此项目添加一个PHP文件

Add a new project in PHPStorm - Step 3

将其命名为"testSDK"

Add a new project in PHPStorm - Step 4

根据您的项目设置,您可能需要在PHP代码中包含composer的自动加载器以启用类的自动加载。

require_once "../vendor/autoload.php";

重要的是确保require_once内的路径正确指向依赖安装期间创建的vendor目录中的autoload.php文件。

Add a new project in PHPStorm - Step 4

之后,您可以添加代码来初始化客户端库并获取控制器类的实例。后续部分提供了初始化客户端库和使用控制器方法示例代码。

3. 运行测试项目

要运行您的项目,您必须设置项目的解释器。解释器是安装在您计算机上的PHP引擎。

文件菜单中打开设置

Run Test Project - Step 1

语言与框架中,选择PHP

Run Test Project - Step 2

解释器选项附近浏览解释器,并选择您的解释器。

Run Test Project - Step 3

选择解释器后,点击确定

Run Test Project - Step 4

要运行您的项目,在测试项目中的PHP文件上右键单击,然后点击运行

Run Test Project - Step 5

如何测试

可以使用PHPUnit运行此SDK中的单元测试。

  1. 首先,使用composer安装依赖项,包括require-dev依赖项。
  2. 从命令行运行vendor\bin\phpunit --verbose来执行测试。如果您已全局安装PHPUnit,请使用phpunit --verbose来运行测试。

您可以在phpunit.xml文件中更改PHPUnit测试配置。

初始化

身份验证

为了设置API客户端的身份验证和初始化,您需要以下信息。

API客户端可以按以下方式初始化。

$apiKey = 'apiKey';

$client = new SwaggerAPILib\SwaggerAPIClient($apiKey);

类参考

控制器列表

Class: APIController

获取单例实例

可以通过API客户端访问APIController类的单例实例。

$client = $client->getClient();

Method: retrieveCurrentNeoStatistics

retrieveCurrentNeoStatistics

function retrieveCurrentNeoStatistics()

示例用法

$result = $client->retrieveCurrentNeoStatistics();

错误

Method: retrieveNearEarthObjectById

retrieveNearEarthObjectById

function retrieveNearEarthObjectById($asteroidId)

参数

示例用法

$asteroidId = 'asteroid_id';

$result = $client->retrieveNearEarthObjectById($asteroidId);

错误

Method: getBrowseNearEarthObjects

browseNearEarthObjects

function getBrowseNearEarthObjects(
        $page = 0,
        $size = 20)

参数

示例用法

$page = 0;
$size = 20;

$result = $client->getBrowseNearEarthObjects($page, $size);

错误

Method: retrieveNEOFeedToday

retrieveNEOFeedToday

function retrieveNEOFeedToday($detailed = null)

参数

示例用法

$detailed = false;

$result = $client->retrieveNEOFeedToday($detailed);

错误

Method: retrieveNearEarthObjectFeed

retrieveNearEarthObjectFeed

function retrieveNearEarthObjectFeed(
        $endDate,
        $startDate = null,
        $detailed = null)

参数

示例用法

$endDate = 'end_date';
$startDate = 'start_date';
$detailed = false;

$result = $client->retrieveNearEarthObjectFeed($endDate, $startDate, $detailed);

错误

返回控制器列表