Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //* ===== ปัญหา callback plugin =====
- const request = require("request");
- request(
- {
- url: `my-url-api`,
- form: req.body,
- method: "POST",
- },
- function (err, httpResponse, body) {
- if (err) return reject(err);
- console.log("body :>> ", body);
- }
- );
- //* ===== วิธีแก้ 1 ใช้ promise =====
- const request = require("request");
- const promiseRequest = () => {
- return new Promise((resolve, reject) => {
- request.post(
- {
- url: `my-url-api`,
- form: req.body,
- },
- function (err, httpResponse, body) {
- if (err) return reject(err);
- resolve(JSON.parse(body));
- }
- );
- });
- };
- const response = await promiseRequest();
- //* ===== วิธีแก้ 2 ใช้ แปลง callback ให้เป็น promise =====
- const { promisify } = require("util");
- const asyncRequest = promisify(request);
- const { body } = await asyncRequest({
- url: `my-url-api`,
- form: req.body,
- method: "POST",
- });
- const response = JSON.parse(body);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement