火星币/欧元货币兑换

一个用于将欧元兑换成其他货币的Laravel包

1.0.0 2023-05-04 18:33 UTC

This package is auto-updated.

Last update: 2024-09-04 21:40:45 UTC


README

Latest Version on Packagist Total Downloads GitHub Actions

此包提供了一种简单的方法来获取欧元与其他货币的当前汇率。

安装

您可以通过composer安装此包

composer require martian/euro-currency-exchange

注册服务提供者

您可以在config/app.php文件中注册服务提供者

// config/app.php

'providers' => [
    ...
    Martian\EuroCurrencyExchange\Providers\EuroCurrencyExchangeServiceProvider::class,
];

本地安装

打开composer.json文件,并在仓库部分添加以下内容:注意:您需要将包复制到packages/martian目录。

{
    // composer.json

    "require": {
        "martian/euro-currency-exchange": "@dev"
    },

    "repositories": [
        "local": {
            "type": "path",
            "url": "packages/martian/euro-currency-exchange",
            "options": {
                "symlink": true
            }
        }
    ]
}

然后运行composer update来安装包。

发布配置

您可以使用以下命令发布配置文件

php artisan vendor:publish --provider="Martian\EuroCurrencyExchange\Providers\EuroCurrencyExchangeServiceProvider" --tag="config"

端点

Postman集合位于postman目录中。

Swagger文档位于/docs文件夹中。在浏览器中打开index.html文件。

用法

默认路由(GET) [/api/exchange?amount=100&to=USD]

默认情况下,兑换端点位于/api/exchange。您可以通过发布配置文件并更改route密钥来更改此内容。

您可以使用https://yourdomain.com/api/exchange?amount=100&to=USD来获取100欧元的美元汇率。

自定义路由

您还可以通过发布配置文件并更改route密钥来使用自定义路由。

// config/euro-currency-exchange.php

return [
    'route' => 'your-custom-route',
];

自定义控制器

您还可以使用此包提供的控制器来创建自己的路由。 注意:您需要在发布配置文件后,将配置文件中的route_disabled密钥设置为true以禁用默认路由。

// routes/api.php

use Martian\EuroCurrencyExchange\Http\Controllers\EuroCurrencyExchangeController;

Route::get('your-custom-route', EuroCurrencyExchangeController::class);

自定义响应

您还可以使用此包提供的Builder来创建来自控制器的自定义响应。

// app/Http/Controllers/YourCustomController.php

use Martian\EuroCurrencyExchange\Classes\Builder;

class YourCustomController extends Controller
{
    public function __invoke(Request $request)
    {
        $builder = new Builder($request->amount, $request->to);

        // Do something with the builder, check the provided methods in the Builder class.
        return response()->json([
            'amount' => $builder->getAmount(),
            'from' => $builder->getCurrency(),
            'to' => $builder->getConvertedCurrency(),
            'rate' => $builder->getRate(),
            'converted' => $builder->getConvertedAmount(),
        ]);
    }
}

测试

composer test

更新日志

有关最近更改的更多信息,请参阅更新日志

贡献

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

安全性

如果您发现任何安全相关问题,请通过电子邮件hendurhance.dev@gmail.com联系,而不是使用问题跟踪器。

鸣谢

许可证

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