velvetmedia/storeden-laravel-api-connettor

Laravel 的 Storeden API 连接器

安装: 142

依赖者: 0

建议者: 0

安全: 0

类型:laravel-package

dev-master 2019-01-02 11:09 UTC

This package is auto-updated.

Last update: 2024-09-29 05:08:35 UTC


README

警告:此打包处于开发模式!

Laravel 的 Storeden SDK。

此包满足在线 Storeden 设置自定义应用配置所需的 授权端点

见:Storeden 文档

用法

将 Storeden Laravel API 连接器添加到您的项目中

composer require velvetmedia/storeden-laravel-api-connettor

查看 routes.php 以获取正确路由以插入到 Storeden 设置表单中

Iframe 和 X-Frame-Options

Storeden 使用 iframe 标签将其应用注入到其后台办公室。

因此,如果您使用 Forge,请像这样编辑 Nginx 文件

add_header X-Frame-Options "allow-from https://[UUID]-backoffice.storeden.com/";

其中 [UUID] 是您的商户 ID,否则如果您为任何商店开发的应用

add_header X-Frame-Options "ALLOWALL";

中间件

在您的应用程序的 kernel.php 中添加一个新的中间件,例如

protected $routeMiddleware = [
    'auth.sdk.storeden' => \Velvetmedia\StoredenLaravelAPIConnector\Middleware\AuthSdkStoredenMiddleware::class,
    ...
];

使用方法如下

Route::get('products', 'ProductsController@index')->middleware('auth.sdk.storeden');

注意

中间件需要查询字符串中的变量 实例。提供您的路由如下

<a href="{{ route('storeden.endpoint.embed.test', ['instance' => request()->get('instance')]) }}">EMBED TEST</a>

自定义嵌入欢迎视图

要自定义此包的视图,请启动命令

php artisan vendor:publish

然后选择

Provider: Velvetmedia\StoredenLaravelAPIConnector\StoredenApiConnectorServiceProvider

覆盖 "embed" 端点的路由,例如

// Overwrite original route
Route::get('endpoint/embed', function () {
    return view('storeden.welcome');
})->middleware('auth.sdk.storeden');

或使用另一个自定义控制器和另一个自定义视图。

访问 API

一旦激活,中间件可以通过请求访问,例如

public function embed(Request $request)
{
    // SDK connection by middleware
    return $request->sdk->api('/store/info.json', 'GET');
}