Completed
Push — master ( 279d4e...5d09e0 )
by Elf
02:49
created

ThrottleRequests::buildResponse()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 8
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 6

Importance

Changes 0
Metric Value
cc 2
eloc 4
nc 2
nop 2
dl 0
loc 8
ccs 0
cts 7
cp 0
crap 6
rs 9.4285
c 0
b 0
f 0
1
<?php
2
3
namespace ElfSundae\Laravel\Support\Http\Middleware;
4
5
use Symfony\Component\HttpFoundation\Response;
6
use Illuminate\Routing\Middleware\ThrottleRequests as BaseThrottle;
7
8
class ThrottleRequests extends BaseThrottle
9
{
10
    /**
11
     * Create a 'too many attempts' response.
12
     *
13
     * @param  string  $key
14
     * @param  int  $maxAttempts
15
     * @return \Illuminate\Http\Response|\Symfony\Component\HttpFoundation\Response
16
     */
17
    protected function buildResponse($key, $maxAttempts)
18
    {
19
        if (app('request')->expectsJson()) {
20
            return api('操作太频繁,请稍后再试。', 429);
21
        }
22
23
        return parent::buildResponse($key, $maxAttempts);
24
    }
25
26
    /**
27
     * Add the limit header information to the given response.
28
     *
29
     * @param  \Symfony\Component\HttpFoundation\Response  $response
30
     * @param  int  $maxAttempts
31
     * @param  int  $remainingAttempts
32
     * @param  int|null  $retryAfter
33
     * @return \Symfony\Component\HttpFoundation\Response
34
     */
35
    protected function addHeaders(Response $response, $maxAttempts, $remainingAttempts, $retryAfter = null)
36
    {
37
        return $response;
38
    }
39
}
40