简论/边界

请求和响应处理器,包括 JSON-RPC

0.5.4 2014-03-24 11:13 UTC

This package is auto-updated.

Last update: 2024-09-21 00:20:18 UTC


README

     _                 _               _                   _           
 ___(_)_ __ ___  _ __ | | ___  _ __   | |__   ___  _ __ __| | ___ _ __ 
/ __| | '_ ` _ \| '_ \| |/ _ \| '_ \  | '_ \ / _ \| '__/ _` |/ _ \ '__|
\__ \ | | | | | | |_) | | (_) | | | | | |_) | (_) | | | (_| |  __/ |   
|___/_|_| |_| |_| .__/|_|\___/|_| |_| |_.__/ \___/|_|  \__,_|\___|_|   
                |_|                                                    

简论/边界

这是一个小型库,用于处理HTTP请求和响应,包括JSON-RPC。

版本

0.5.2

如何安装

由于此库使用PHP 5.4语法构建,您需要安装它。简论/边界可以通过从github下载或通过Composer安装。我鼓励您选择后者。以下是一个可能的composer.json文件的片段

{
  "require": {
    "php": ">=5.4",
    "simplon/border": "0.5.2"
  }
}

请求对象

请求类基本上是PHP的$_SERVER变量的接口包装器。我还添加了一些帮助识别/处理JSON-RPC请求的方法。

示例

仅几个调用以展示我们的操作方式。查看类以查看所有方法

// print request method
echo Request::getInstance()->getMethod();

// print request uri
echo Request::getInstance()->getUri();

// print query string
echo Request::getInstance()->getQueryString();

// print remote ip
echo Request::getInstance()->getRemoteIp();

如何处理JSON-RPC请求?

// is that a json-rpc request?
if(Request::getInstance()->isJsonRpc())
{
  // print request id
  echo Request::getInstance()->getJsonRpcId();
  
  // print method
  echo Request::getInstance()->getJsonRpcMethod();

  // print params | array
  var_dump(Request::getInstance()->getJsonRpcParams());
}

响应对象

需要讨论HTTP?响应类正是如此。您可以使用它通过发送来响应HTTP请求

  • 状态码(例如,200、400、500 ...)
  • 启动文件下载
  • 启动流式处理过程(分块)
  • 返回到引用者
  • JSON-RPC响应
  • JSON响应
  • HTML响应
  • 文本
  • 重定向到另一个地址

示例

这里有一些示例。查看类以查看所有

// initiating file download
(new Response())->sendFile('/your/file/path/file.pdf', 'application/pdf');

// talk json-rpc
(new Response())->sendJsonRpc('result', ['name' => 'hansi'], 1);

// talk json
(new Response())->sendJson(['name' => 'hansi']);

// send status code
(new Response())->sendStatusCode(500);