kerigard/laravel-mix-token

此包已被弃用,不再维护。未建议替代包。

跟踪使用Laravel Mix生成的文件中的更改

v1.0.3 2022-08-06 15:43 UTC

This package is auto-updated.

Last update: 2023-03-06 17:09:09 UTC


README

Build Status Total Downloads Latest Stable Version License

跟踪使用Laravel Mix创建的SPA应用的文件中的更改。

安装

通过Composer

composer require kerigard/laravel-mix-token

使用方法

您应该在应用程序的 app/Http/Kernel.php 文件中向 api 中间件组添加中间件

'api' => [
    \Kerigard\MixToken\SetMixHeader::class,
    'throttle:api',
    \Illuminate\Routing\Middleware\SubstituteBindings::class,
],

在HTML meta 标签中添加token

<meta name="mix-token" content="{{ mix_token() }}">

要找出是否有更改,您需要在所有发送到服务器的请求中添加 X-Requested-With 标头,并在响应时检查 meta 标签中的token与 X-Mix-Token 标头的差异。

import axios from 'axios'

const mixToken = document.head.querySelector('meta[name=mix-token]').content
const instance = axios.create({
  headers: { 'X-Requested-With': 'XMLHttpRequest' }
})

instance.interceptors.response.use(
  (response) => {
    if (response.headers['x-mix-token'] !== undefined && response.headers['x-mix-token'] != mixToken) {
      console.log('Mix manifest has been changed. Ask the user to refresh the page')
    }

    return response
  },
)

变更日志

请参阅 CHANGELOG 获取最近更改的更多信息。

许可证

MIT。请参阅 LICENSE FILE 获取更多信息。