add one faq for acl::HttpServletRequest

This commit is contained in:
zsxxsz 2019-06-30 09:54:58 +08:00
parent 71980ea862
commit 2e35831bff

16
FAQ.md
View File

@ -23,7 +23,8 @@
* [2. acl HTTP 服务器是否支持文件上传功能?](#2-acl-http-服务器是否支持文件上传功能)
* [3. acl HTTP 模块是否支持服务器/客户端两种模式?](#3-acl-http-模块是否支持服务器客户端两种模式)
* [4. acl HTTP 模块是否支持 websocket 通信协议?](#4-acl-http-模块是否支持-websocket-通信协议)
* [5. acl HTTP 模块是否支持 session?](#5-acl-http-模块是否支持-session)
* [5. acl HTTP 模块是否支持 session](#5-acl-http-模块是否支持-session)
* [6. 从 acl::HttpServletRequest 为何读不到 json 或 xml 数据体?](#6-从-acl::httpservletrequest-为何读不到-json-或-xml-数据体)
* [、Redis 模块](#三redis-模块)
* [1. acl redis 库是否支持集群功能?](#1-acl-redis-库是否支持集群功能)
* [2. acl redis 库是如何划分的?](#2-acl-redis-库是如何划分的)
@ -130,6 +131,19 @@ lib_acl_cpp 库是以动态加载方式加载 mysql 动态库的,所以在编
#### 5. acl HTTP 模块是否支持 session?
支持。acl HTTP 模块当用在服务器编程时支持 session 存储,目前支持使用 memcached 或 redis 存储 session 数据。
#### 6. 从 acl::HttpServletRequest 为何读不到 json 或 xml 数据体?
当 HTTP 客户端请求的数据体为 json 或 xml 时,默认情况下从 acl::HttpServletRequest 对象中是读不到 json/xml 数据的,主要原因在于 HttpServletRequest 内置了自动读取并解析 json/xml/x-www-form-urlencoded 类型数据的功能,使用者只需直接获取解析后的对象即可,如针对 json 类数据体:
```c++
void get_json(acl::HttpServletRequest& req)
{
acl::json* json = req.getJson();
...
}
```
如果应用想自己读取并解析 json 数据,则需要在调用 acl::HttpServlet::setParseBody(false),禁止 acl::HttpServletRequest 类对象内部自动读取数据。
### 、Redis 模块
#### 1. acl redis 库是否支持集群功能?
答案acl redis 客户端库同时支持集群和单机方式的 redis-server。