preprio/php-sdk

此软件包已被弃用,不再维护。作者建议使用preprio/php-sdk软件包。

Prepr PHP SDK

v5.0.1 2024-01-22 13:32 UTC

This package is auto-updated.

Last update: 2024-01-22 13:34:01 UTC


README

此软件包是REST API的SDK。

基本功能

GitHub上的SDK

最小PHP版本: ^8.2

需要 GuzzleHttp ^7.7.0

对于Laravel项目,我们建议使用RESTGraphQL的Laravel提供程序。

安装

您可以将SDK作为composer包安装。

composer require preprio/php-rest-sdk

发送第一个请求

让我们从获取Prepr环境中的内容项开始。

<?php

use Preprio\PhpRestSdk\Prepr;

$apiRequest = new Prepr('{ACCESS_TOKEN}');

$apiRequest
    ->path('content_items')
    ->query([
        'fields' => 'items'
    ])
    ->get();

if($apiRequest->getStatusCode() == 200) {

    print_r($apiRequest->getResponse());
}

要获取单个内容项,请将ID传递给请求。

<?php

use Preprio\PhpRestSdk\Prepr;

$apiRequest = new Prepr('{ACCESS_TOKEN}');

$apiRequest
    ->path('content_items/{id}', [
        'id' => '1236f0b1-b26d-4dde-b835-9e4e441a6d09'
    ])
    ->query([
        'fields' => 'items'
    ])
    ->get();

if($apiRequest->getStatusCode() == 200) {

    print_r($apiRequest->getResponse());
}

自动分页结果

要获取端点的所有资源,您可以使用自动分页功能。

$apiRequest
    ->path('content_items')
    ->query([
        'limit' => 200 // optional
    ])
    ->autoPaging();

if($apiRequest->getStatusCode() == 200) {

    print_r($apiRequest->getResponse());
}

在请求中覆盖AccessToken

授权也可以为特定请求设置->url('url')->authorization('token')

POST

$apiRequest
    ->path('content_items')
    ->params([
        'body' => 'Example'
    ])
    ->post();

if($apiRequest->getStatusCode() == 201) {

    print_r($apiRequest->getResponse());
}

PUT

$apiRequest
    ->path('content_items')
    ->params([
        'body' => 'Example'
    ])
    ->put();

if($apiRequest->getStatusCode() == 200) {

    print_r($apiRequest->getResponse());
}

DELETE

$apiRequest
    ->path('content_items/{id}',[
        'id' => "398402d-dd-asd-ads3343dad"
    ])
    ->delete();

if($apiRequest->getStatusCode() == 204) {

    // Deleted.
}

Multipart/Chunk资产上传

$apiRequest
    ->path('assets')
    ->params([
      'body' => 'Example',
    ])
    ->file('/path/to/file.txt')
    ->post();

if($apiRequest->getStatusCode() == 200) {

    print_r($apiRequest->getResponse());
}

调试错误

使用$apiRequest->getRawResponse(),您可以获取Prepr API的原始响应。