有实例:DMZ 中的 Nginx,使用 TNT_nginx_upstream_module + Tarantool Cartridge 作为 API 服务器。
当我得到良好结果的响应时 - 它是 200 OK + JSON 数据
如何设置其他响应?
- 400 错误请求
- 403 禁止
- 404 未找到
- 410 走了
- 500内部服务器错误
- 503服务不可用
有实例:DMZ 中的 Nginx,使用 TNT_nginx_upstream_module + Tarantool Cartridge 作为 API 服务器。
当我得到良好结果的响应时 - 它是 200 OK + JSON 数据
如何设置其他响应?
Tarantool Nginx 上游模块被设计为遵循 JSON RPC,而不是通用 HTTP。有一种方法可以返回任意结果,rewrite_by_lua
在该location
部分中使用。它看起来像这样:
location /api {
default_type application/json;
rewrite_by_lua '
...
';
}
我没有在这里粘贴完整的片段,因为它很长。你可以在这里查一下。
一般来说,如果你想要一个通用的 HTTP API,我也建议你不要使用上面提到的上游模块。最好使用 Lua 编写的HTTP 服务器模块,并使用 Nginx 作为常规反向代理。作为奖励,Lua HTTP 服务器包含在盒式模块中。