kyle 2 年之前
父節點
當前提交
efc3c91289
共有 4 個文件被更改,包括 82 次插入1 次删除
  1. 1
    0
      app/Http/Kernel.php
  2. 21
    0
      app/Http/Middleware/Cors.php
  3. 59
    0
      public/testapi/testapi.html
  4. 1
    1
      routes/web.php

+ 1
- 0
app/Http/Kernel.php 查看文件

56
         'can' => \Illuminate\Auth\Middleware\Authorize::class,
56
         'can' => \Illuminate\Auth\Middleware\Authorize::class,
57
         'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
57
         'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
58
         'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
58
         'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
59
+        'cors' => \App\Http\Middleware\Cors::class,
59
     ];
60
     ];
60
 }
61
 }

+ 21
- 0
app/Http/Middleware/Cors.php 查看文件

1
+<?php
2
+
3
+namespace App\Http\Middleware;
4
+
5
+use Closure;
6
+
7
+class Cors
8
+{
9
+    /**
10
+     * Handle an incoming request.
11
+     *
12
+     * @param  \Illuminate\Http\Request  $request
13
+     * @param  \Closure  $next
14
+     * @return mixed
15
+     */
16
+    public function handle($request, Closure $next)
17
+    {
18
+        return $next($request)
19
+        ->header('Access-Control-Allow-Origin','*');
20
+    }
21
+}

+ 59
- 0
public/testapi/testapi.html 查看文件

1
+<!DOCTYPE html>
2
+<html lang="en">
3
+
4
+<head>
5
+    <title>Test</title>
6
+    <meta charset="utf-8">
7
+    <meta name="viewport" content="width=device-width, initial-scale=1">
8
+    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.1/dist/css/bootstrap.min.css">
9
+    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
10
+    <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.1/dist/js/bootstrap.bundle.min.js"></script>
11
+    <script src="https://malsup.github.io/jquery.blockUI.js"></script>
12
+</head>
13
+
14
+<body>
15
+<div class="container">
16
+    <h2>Test</h2>
17
+    <form>
18
+        <button>Send</button>
19
+    </form>
20
+    <hr>
21
+    <div class="output"></div>
22
+</div>
23
+<div class="spinner-border" role="status" style="display: none">
24
+    <span class="sr-only">Loading...</span>
25
+</div>
26
+
27
+<script>
28
+    $(document).ready(function () {
29
+        $("button").click(function (e) {
30
+            e.preventDefault();
31
+
32
+            $.blockUI({
33
+                message: $('.spinner-border'),
34
+                css: {
35
+                    backgroundColor: 'transparent',
36
+                    border: '0'
37
+                },
38
+            });
39
+
40
+            $.ajax({
41
+                type: "get",
42
+                url: 'https://declare.taiwanpay.com.tw/api2021/info/Uogilvy00000000000000000000020001',
43
+                dataType: "json",
44
+                contentType: "application/json;charset=utf-8"
45
+            }).done(function (result) {
46
+                console.log(result)
47
+
48
+            }).fail(function (jqXHR, textStatus) {
49
+                console.log(jqXHR);
50
+                console.log(textStatus);
51
+            }).always(function () {
52
+                $.unblockUI();
53
+            });
54
+        });
55
+    });
56
+</script>
57
+</body>
58
+
59
+</html>

+ 1
- 1
routes/web.php 查看文件

6
 });
6
 });
7
 
7
 
8
 // API
8
 // API
9
-Route::group(['prefix' => 'api2021', 'namespace' => 'Web'], function () {
9
+Route::group(['middleware' => 'cors', 'prefix' => 'api2021', 'namespace' => 'Web'], function () {
10
     // 申報系統(已廢棄)
10
     // 申報系統(已廢棄)
11
     Route::get('/getinfo/{hash}', 'Api2021Controller@getinfo');
11
     Route::get('/getinfo/{hash}', 'Api2021Controller@getinfo');
12
     Route::post('/saveimg/{hash}', 'Api2021Controller@saveimg');
12
     Route::post('/saveimg/{hash}', 'Api2021Controller@saveimg');