首页
/ Unirest for PHP 技术文档

Unirest for PHP 技术文档

2024-12-25 12:50:34作者:范垣楠Rhoda

1. 安装指南

使用 Composer 进行安装

要使用 Composer 安装 unirest-php,只需将以下内容添加到你的 composer.json 文件中:

{
    "require-dev": {
        "mashape/unirest-php": "3.*"
    }
}

或者运行以下命令:

composer require mashape/unirest-php

这将获取最新版本的库并安装。如果你需要 master 分支的未标记版本,可以使用以下命令:

composer require mashape/php-test-reporter dev-master

Composer 会在 ./vendor/autoloader.php 安装自动加载器。要在你的脚本中包含库,添加以下代码:

require_once 'vendor/autoload.php';

如果你使用 Symfony2,自动加载器需要自动检测。

从源码安装

从 Github 下载 PHP 库,然后包含 Unirest.php 在你的脚本中:

git clone git@github.com:Mashape/unirest-php.git
require_once '/path/to/unirest-php/src/Unirest.php';

2. 项目使用说明

Unirest 是一组轻量级的 HTTP 库,支持多种语言。以下是一个使用 Unirest 发起 HTTP 请求的示例:

$headers = array('Accept' => 'application/json');
$query = array('foo' => 'hello', 'bar' => 'world');

$response = Unirest\Request::post('http://mockbin.com/request', $headers, $query);

echo $response->code;        // HTTP 状态码
echo $response->headers;     // 响应头
echo $response->body;        // 解析后的响应体
echo $response->raw_body;    // 未解析的响应体

3. 项目API使用文档

以下是一些常见的请求类型和用法:

JSON 请求

$headers = array('Accept' => 'application/json');
$data = array('name' => 'ahmad', 'company' => 'mashape');

$body = Unirest\Request\Body::json($data);

$response = Unirest\Request::post('http://mockbin.com/request', $headers, $body);

表单请求

$headers = array('Accept' => 'application/json');
$data = array('name' => 'ahmad', 'company' => 'mashape');

$body = Unirest\Request\Body::form($data);

$response = Unirest\Request::post('http://mockbin.com/request', $headers, $body);

多部分请求

$headers = array('Accept' => 'application/json');
$data = array('name' => 'ahmad', 'company' => 'mashape');

$body = Unirest\Request\Body::multipart($data);

$response = Unirest\Request::post('http://mockbin.com/request', $headers, $body);

多部分文件上传

$headers = array('Accept' => 'application/json');
$data = array('name' => 'ahmad', 'company' => 'mashape');
$files = array('bio' => '/path/to/bio.txt', 'avatar' => '/path/to/avatar.jpg');

$body = Unirest\Request\Body::multipart($data, $files);

$response = Unirest\Request::post('http://mockbin.com/request', $headers, $body);

自定义请求体

$headers = array('Accept' => 'application/json', 'Content-Type' => 'application/x-php-serialized');
$body = serialize(array('foo' => 'hello', 'bar' => 'world'));

$response = Unirest\Request::post('http://mockbin.com/request', $headers, $body);

认证

Unirest 支持多种认证方式,例如:

// Basic 认证
Unirest\Request::auth('username', 'password');

或者使用 Mashape 认证:

// Mashape 认证
Unirest\Request::setMashapeKey('<mashape_key>');

4. 项目安装方式

请参考上文中的安装指南。

登录后查看全文
热门项目推荐
相关项目推荐