lua-resty-url

URL 解析器

$ opm get 3scale/lua-resty-url

lua-resty-url [!CircleCI](https://circleci.com/gh/3scale/lua-resty-url)

lua-resty-url - OpenResty 的 URL 解析器。

状态

此库被认为是生产就绪的。

描述

这个 Lua 库是一个非常简单的基于正则表达式的 URL 解析器。

此库可以解析 URL 并将其拆分为组件。

概要

    http {
        server {
            location /test {
                content_by_lua_block {
                    local resty_url = require 'resty.url'
    
                    ngx.say("USER: ", resty_url.parse('http://foo:bar@example.com').user)
                }
            }
        }
    }

方法

所有方法都应该在模块上调用,没有 self。

split

语法: parts = resty_url.split(url)

返回一个带整数键的表,包含 URL 的各个部分。组件为:scheme、user、password、host、port、path。

parse

语法: uri = resty_url.parse(url)

返回一个以组件为键的表。组件为:scheme、user、password、host、port、path。

join

语法: url = resty_url.join(base, part, ...)

将 URI 组件连接成最终的 URL。还会规范化 URI 以移除双斜杠。可以连接 parse 方法返回的对象。

default_port

语法: port = resty_url.default_port(scheme)

返回给定方案的默认端口。默认情况下只提供 http 和 https。

normalize

语法: uri = resty_url.normalize(uri)

移除 URI 中不必要的斜杠。

安装

如果你使用的是 OpenResty 包 (https://openresty.org.cn ),那么你可以使用 opm 来安装这个包。

    opm get 3scale/lua-resty-url

错误和补丁

请通过以下方式报告错误或提交补丁:

  1. GitHub 问题跟踪器 上创建工单,

作者

Michal "mikz" Cichra <mcichra@redhat.com>,Red Hat Inc。

版权和许可

此模块根据 Apache 许可证版本 2.0 授权。

版权所有 (C) 2016-2017,Red Hat Inc。

保留所有权利。

查看 LICENSE 获取完整许可证。

另请参阅

  • the APIcast API Gateway: https://github.com/3scale/apicast/#readme

作者

Michal Cichra (mikz)

许可证

apache2

依赖项

ngx_http_lua

版本