blue-energy/laravel-url-shortener

Laravel 强大的 URL 缩短工具

v0.4.1 2021-01-22 12:31 UTC

This package is not auto-updated.

Last update: 2024-09-29 06:20:15 UTC


README

Laravel 强大的 URL 缩短工具

这是从 https://github.com/LaraCrafts/laravel-url-shortener 分支出来的

安装

您可以使用Composer轻松安装此包,只需运行以下命令

composer require laracrafts/laravel-url-shortener

需求

此包有以下需求

  • PHP 7.1 或更高版本
  • Laravel 5.1 或更高版本

Laravel 5.5+

如果您使用的是Laravel 5.5或更高版本,那么这就足够了。您现在可以使用此包,继续到 使用方法 部分。

Laravel 5.1-5.4

如果您正在使用较老的Laravel版本,请将包的服务提供者注册到您的应用程序中。您可以通过将以下行添加到您的 config/app.php 文件中来实现这一点

'providers' => [
   ...
   LaraCrafts\UrlShortener\UrlShortenerServiceProvider::class,
   ...
],

使用方法

可以从容器中通过两种方式检索缩略器

$shortener = app('url.shortener');
// or...
$shortener = url()->shortener();

一旦您有了缩略器的实例,您就可以缩短您的URL了

// This will return your shortened URL as a string
$shortener->shorten(...);

// This will return a promise which will resolve to your shortened URL
$shortener->shortenAsync(...);

// You can also call shortening from Laravel's url component directly
url()->shorten(...);

// or...
app('url')->shorten(...);

// or even...
app('url.shortener')->shorten(...);

此包依赖于Guzzle的promise库来实现异步缩短,有关更多信息,请参阅他们的 文档

您还可以使用依赖注入将缩略器注入到方法中

class MyController extends Controller
{
    public function myFunction(ShortenerManager $shortener)
    {
        $shortener->shorten(...);
    }
}

缩略器公开以下方法

更改驱动程序

您可以通过在环境文件中设置 URL_SHORTENER_DRIVER={driver} 或直接发布配置文件并更改它来更改默认驱动程序。

添加自己的驱动程序

与Laravel的 核心组件 类似,您可以为此包添加自己的驱动程序。您可以通过将以下代码添加到应用程序的中心位置(最好是一个服务提供者)来实现。

public function boot(ShortenerManager $shorteners)
{
    $shorteners->extend('my_driver', function ($app, $config) {
       // Return your driver instance here
    });
}

一旦您注册了您的驱动程序,您就可以像调用任何其他驱动程序一样调用它。

如果您编写了一个自定义驱动程序,其他人可能会觉得它很有用(例如公开的在线缩短服务),请考虑通过拉取请求将其添加到包中。

可用驱动程序

以下是可用驱动程序的列表以及它们的规格

Bit.ly

网站

此驱动程序在Bit.ly的API上运行,目前仅支持API版本4。API需要一个访问令牌,目前仅支持 通用访问令牌。您可以从您的Bit.ly个人资料中获取此类令牌。如果您有付费的Bit.ly账户,您还可以为您的缩短URL设置域名。

Firebase 动态链接

网站

此驱动程序在Firebase的API上运行。API需要一个访问令牌、URI前缀和后缀。您可以在Firebase控制台中找到这些信息。在项目设置下的“Web API密钥”下可访问令牌,前缀可以在动态链接菜单下定义和访问。

后缀可以是 SHORTUNGUESSABLE 的值。

重要!通过API创建的链接在Firebase控制台中不可见。它们只能通过 Analytics REST API 访问。

Is.gd / V.gd

网站

此驱动程序支持通过各自的API使用is.gdv.gd。当启用链接预览时,将使用v.gd,否则使用is.gd。

Ouo.io

网站

此驱动程序使用Ouo.io API,需要访问令牌。该API允许通过广告进行URL货币化,并通过仪表板提供分析。

Polr

网站

此驱动程序使用Polr API。该API需要访问令牌和URI前缀。

Shorte.st

网站

此驱动程序使用Shorte.st API,该API需要访问令牌。此API支持您URL的货币化,并通过仪表板提供有关您流量的洞察。

TinyURL

网站

此驱动程序运行在TinyURL API上,无需额外设置。此驱动程序是包默认设置。

更新日志

有关最近版本中已更改内容的更多信息,请参阅变更日志

安全性

如果您发现任何安全相关的问题,请通过电子邮件联系作者之一,而不是使用问题跟踪器。您可以在composer.json中找到作者电子邮件。

贡献

有关详细信息,请参阅贡献指南

鸣谢

许可协议

MIT许可证(MIT)。有关更多信息,请参阅许可文件