📜  创建请求 php-salesforce-rest-api (1)

📅  最后修改于: 2023-12-03 15:22:41.572000             🧑  作者: Mango

创建请求 php-salesforce-rest-api

你是否正在寻找一个用于 PHP 的 Salesforce REST API 的库?那么 php-salesforce-rest-api 是你需要的解决方案。

简介

php-salesforce-rest-api 是一个基于 Guzzle 的 Salesforce REST API 的 PHP 库。它允许你使用 OAuth 2.0 进行身份验证并与 Salesforce REST API 进行通信。

特性
  • 使用简单;
  • 支持 OAuth 2.0 认证;
  • 支持所有标准 Salesforce REST API 终点;
  • 支持自定义 REST API 终点;
  • 支持所有 HTTP 请求方法;
  • 支持元数据 API 和实时事件 API;
  • 支持异步请求;
  • 支持文件上传。
安装

使用 Composer 安装 php-salesforce-rest-api

composer require wadosoftware/php-salesforce-rest-api
使用
进行身份验证
use WadoSoftware\Salesforce\ClientBuilder;
use WadoSoftware\Salesforce\Credentials;

$credentials = new Credentials(
    'your-client-id',
    'your-client-secret',
    'your-redirect-uri',
    'your-username',
    'your-password',
    'your-security-token'
);

$client = ClientBuilder::create()->setCredentials($credentials)->build();
查询数据
$response = $client->query('SELECT Id, Name FROM Account');

foreach ($response['records'] as $record) {
    echo $record['Id'] . ' ' . $record['Name'] . PHP_EOL;
}
更新数据
$accountId = 'some-account-id';
$account = [
    'Name' => 'New Account Name'
];

$response = $client->update('Account', $accountId, $account);

if ($response->getStatusCode() == 204) {
    echo 'Account updated successfully!' . PHP_EOL;
}
创建数据
$account = [
  'Name' => 'Test Account'
];

$response = $client->create('Account', $account);

if ($response->getStatusCode() == 201) {
    $location = $response->getHeader('Location')[0];
    preg_match('/\w{18}/', $location, $matches);
    $accountId = $matches[0];
    
    echo 'Account created successfully with ID: ' . $accountId . PHP_EOL;
}
删除数据
$accountId = 'some-account-id';

$response = $client->delete('Account', $accountId);

if ($response->getStatusCode() == 204) {
    echo 'Account deleted successfully!' . PHP_EOL;
}
调用自定义 REST API 终点
$endpoint = '/echo/json/';

$response = $client->request('GET', $endpoint, [
    'query' => [
        'foo' => 'bar'
    ]
]);

$body = json_decode((string) $response->getBody(), true);

echo $body['foo']; // 'bar'
总结

php-salesforce-rest-api 是一个强大的基于 Guzzle 的 Salesforce REST API 的 PHP 库,它简单易用,支持 OAuth 2.0 认证和所有标准 Salesforce REST API 终点。如果你使用 PHP,并需要与 Salesforce 进行通信,则此库是一个不错的选择。