xiongzhu vor 3 Jahren
Commit
c11cf7edff
5 geänderte Dateien mit 187 neuen und 0 gelöschten Zeilen
  1. 3 0
      .gitignore
  2. 45 0
      index.js
  3. 63 0
      order.js
  4. 6 0
      package.json
  5. 70 0
      yarn.lock

+ 3 - 0
.gitignore

@@ -0,0 +1,3 @@
+.DS_Store
+node_modules
+.vscode

+ 45 - 0
index.js

@@ -0,0 +1,45 @@
+const axios = require("axios");
+
+// let q = Promise.resolve();
+
+// for (let i = 0; i < 100; i++) {
+//     q = q.then(() => {
+//         return new Promise((resolve, reject) => {
+//             axios
+//                 .get("http://localhost:8080/testmq/send?data=" + (i + 1))
+//                 .then((res) => {
+//                     console.log(i + " " + res.data);
+//                     resolve();
+//                 });
+//         });
+//     });
+// }
+// q.then(() => {});
+
+let c = 0;
+let success = 0;
+let fail = 0;
+Promise.all(
+    new Array(3000).fill(null).map(
+        () =>
+            new Promise((resolve, reject) => {
+                let t = new Date().getTime();
+                axios
+                    .get("http://localhost:8080/teststock/test")
+                    .then((res) => {
+                        if (res.data === "ok") {
+                            success++;
+                        } else {
+                            fail++;
+                        }
+                        resolve();
+                    })
+                    .catch((e) => {
+                        console.log(e);
+                        resolve();
+                    });
+            })
+    )
+).then((res) => {
+    console.log("all done, success:" + success + ", fail:" + fail);
+});

+ 63 - 0
order.js

@@ -0,0 +1,63 @@
+const axios = require("axios");
+const qs = require("qs");
+axios.defaults.baseURL = "http://192.168.50.116:8080";
+axios.interceptors.request.use(
+    function (config) {
+        config.metadata = { startTime: new Date() };
+        return config;
+    },
+    function (error) {
+        return Promise.reject(error);
+    }
+);
+axios.interceptors.response.use(
+    function (response) {
+        response.config.metadata.endTime = new Date();
+        response.duration =
+            response.config.metadata.endTime -
+            response.config.metadata.startTime;
+        return response;
+    },
+    function (error) {
+        error.config.metadata.endTime = new Date();
+        error.duration =
+            error.config.metadata.endTime - error.config.metadata.startTime;
+        return Promise.reject(error);
+    }
+);
+
+axios
+    .post(
+        "/auth/phonePwdLogin",
+        qs.stringify({ phone: 15077886171, password: "123456" })
+    )
+    .then((res) => {
+        axios.defaults.headers["Authorization"] = "Bearer " + res.data;
+        start();
+    })
+    .catch((e) => {
+        console.log(e.response);
+    });
+
+const createOrder = () => {
+    axios
+        .post("/order/mqCreate", qs.stringify({ collectionId: 8012, qty: 1 }))
+        .then((res) => {
+            let i = setInterval(() => {
+                axios
+                    .get("/order/createResult?id=" + res.data.id)
+                    .then((res) => {
+                        if (res.data) {
+                            clearInterval(i);
+                            console.log(res.data.data);
+                        }
+                    });
+            }, 1000);
+        });
+};
+
+function start() {
+    for (let i = 0; i < 100; i++) {
+        createOrder();
+    }
+}

+ 6 - 0
package.json

@@ -0,0 +1,6 @@
+{
+  "dependencies": {
+    "axios": "^0.24.0",
+    "qs": "^6.10.3"
+  }
+}

+ 70 - 0
yarn.lock

@@ -0,0 +1,70 @@
+# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
+# yarn lockfile v1
+
+
+axios@^0.24.0:
+  version "0.24.0"
+  resolved "https://registry.npmmirror.com/axios/download/axios-0.24.0.tgz#804e6fa1e4b9c5288501dd9dff56a7a0940d20d6"
+  integrity sha512-Q6cWsys88HoPgAaFAVUb0WpPk0O8iTeisR9IMqy9G8AbO4NlpVknrnQS03zzF9PGAWgO3cgletO3VjV/P7VztA==
+  dependencies:
+    follow-redirects "^1.14.4"
+
+call-bind@^1.0.0:
+  version "1.0.2"
+  resolved "https://registry.nlark.com/call-bind/download/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c"
+  integrity sha1-sdTonmiBGcPJqQOtMKuy9qkZvjw=
+  dependencies:
+    function-bind "^1.1.1"
+    get-intrinsic "^1.0.2"
+
+follow-redirects@^1.14.4:
+  version "1.14.7"
+  resolved "https://registry.npmmirror.com/follow-redirects/download/follow-redirects-1.14.7.tgz#2004c02eb9436eee9a21446a6477debf17e81685"
+  integrity sha512-+hbxoLbFMbRKDwohX8GkTataGqO6Jb7jGwpAlwgy2bIz25XtRm7KEzJM76R1WiNT5SwZkX4Y75SwBolkpmE7iQ==
+
+function-bind@^1.1.1:
+  version "1.1.1"
+  resolved "https://registry.nlark.com/function-bind/download/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
+  integrity sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0=
+
+get-intrinsic@^1.0.2:
+  version "1.1.1"
+  resolved "https://registry.nlark.com/get-intrinsic/download/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6"
+  integrity sha1-FfWfN2+FXERpY5SPDSTNNje0q8Y=
+  dependencies:
+    function-bind "^1.1.1"
+    has "^1.0.3"
+    has-symbols "^1.0.1"
+
+has-symbols@^1.0.1:
+  version "1.0.2"
+  resolved "https://registry.nlark.com/has-symbols/download/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423"
+  integrity sha1-Fl0wcMADCXUqEjakeTMeOsVvFCM=
+
+has@^1.0.3:
+  version "1.0.3"
+  resolved "https://registry.nlark.com/has/download/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
+  integrity sha1-ci18v8H2qoJB8W3YFOAR4fQeh5Y=
+  dependencies:
+    function-bind "^1.1.1"
+
+object-inspect@^1.9.0:
+  version "1.12.0"
+  resolved "https://registry.npmmirror.com/object-inspect/download/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0"
+  integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==
+
+qs@^6.10.3:
+  version "6.10.3"
+  resolved "https://registry.npmmirror.com/qs/download/qs-6.10.3.tgz#d6cde1b2ffca87b5aa57889816c5f81535e22e8e"
+  integrity sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==
+  dependencies:
+    side-channel "^1.0.4"
+
+side-channel@^1.0.4:
+  version "1.0.4"
+  resolved "https://registry.nlark.com/side-channel/download/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf"
+  integrity sha1-785cj9wQTudRslxY1CkAEfpeos8=
+  dependencies:
+    call-bind "^1.0.0"
+    get-intrinsic "^1.0.2"
+    object-inspect "^1.9.0"