From 755fa6ae526af15da06772e6ca5b3e428f048d4c Mon Sep 17 00:00:00 2001 From: Naccl Date: Sun, 16 Jul 2023 00:45:05 +0800 Subject: [PATCH] fix --- .../naccl/dwz/controller/IndexController.java | 8 +++-- .../top/naccl/dwz/entity/GenerateCmd.java | 18 +++++++++++ src/main/resources/templates/index.html | 32 ++++++++++++------- 3 files changed, 43 insertions(+), 15 deletions(-) create mode 100644 src/main/java/top/naccl/dwz/entity/GenerateCmd.java diff --git a/src/main/java/top/naccl/dwz/controller/IndexController.java b/src/main/java/top/naccl/dwz/controller/IndexController.java index 6ee5e44..3f9f014 100644 --- a/src/main/java/top/naccl/dwz/controller/IndexController.java +++ b/src/main/java/top/naccl/dwz/controller/IndexController.java @@ -6,9 +6,10 @@ import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.ResponseBody; import top.naccl.dwz.annotation.AccessLimit; +import top.naccl.dwz.entity.GenerateCmd; import top.naccl.dwz.entity.R; import top.naccl.dwz.service.UrlService; import top.naccl.dwz.util.HashUtils; @@ -27,7 +28,7 @@ public class IndexController { @Value("${server.host}") public void setHost(String host) { - this.host = host; + IndexController.host = host; } @GetMapping("/") @@ -38,7 +39,8 @@ public class IndexController { @AccessLimit(seconds = 10, maxCount = 1, msg = "10秒内只能生成一次短链接") @PostMapping("/generate") @ResponseBody - public R generateShortURL(@RequestParam String longURL) { + public R generateShortURL(@RequestBody GenerateCmd cmd) { + String longURL = cmd.getLongURL(); if (UrlUtils.checkURL(longURL)) { if (!longURL.startsWith("http")) { longURL = "http://" + longURL; diff --git a/src/main/java/top/naccl/dwz/entity/GenerateCmd.java b/src/main/java/top/naccl/dwz/entity/GenerateCmd.java new file mode 100644 index 0000000..3bdf998 --- /dev/null +++ b/src/main/java/top/naccl/dwz/entity/GenerateCmd.java @@ -0,0 +1,18 @@ +package top.naccl.dwz.entity; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author Naccl + * @date 2023-07-16 + */ +@Builder +@Data +@AllArgsConstructor +@NoArgsConstructor +public class GenerateCmd { + private String longURL; +} diff --git a/src/main/resources/templates/index.html b/src/main/resources/templates/index.html index d4cc68a..135c25b 100644 --- a/src/main/resources/templates/index.html +++ b/src/main/resources/templates/index.html @@ -29,17 +29,25 @@ $('#generate').click(() => { let longURL = $('#long').val(); if (longURL) { - $.post("/generate", { - longURL - }, function (res) { - if (res.code === 200) { - $('#short').val(res.data); - } else { - alert(res.msg); - } - }, "json").fail(() => { - alert('异常错误'); - }); + $.ajax({ + url: "/generate", + type: "POST", + contentType: "application/json", + data: JSON.stringify({ + longURL: longURL + }), + dataType: "json", + success: function (res) { + if (res.code === 200) { + $('#short').val(res.data); + } else { + alert(res.msg); + } + }, + error: function () { + alert('异常错误'); + } + }); } else { alert('请输入原始链接'); } @@ -54,4 +62,4 @@ }); - \ No newline at end of file +