Sharing how to use ajax and promise together
This article mainly shares with you how to use ajax and promise together. Promise can be used to ensure the execution order of ajax requests that need to be completed. Send the second request after the first request returns correctly. Hope it helps everyone.
/* 定义一个使用promise的ajax请求,这里依赖jquery 参数中请求url为必填参数 */ const ajaxPromise= param => { return new Promise((resovle, reject) => { $.ajax({ "type":param.type || "get", "async":param.async || true, "url":param.url, "data":param.data || "", "success": res => { resovle(res); }, "error": err => { reject(err); } }) }) } /* 第一个请求 */ let step1 = () => { ajaxPromise({ "url":"", }).then(res => { console.log("第一个请求正确返回==>"+res); step2(res); }).catch(err => { console.log("第一个请求失败"); }) } /* 第二个请求 */ let step2 = (res) => { ajaxPromise({ "type":"get", "url":"", "data":{"name":res} }).then(res => { console.log("第二个请求正确返回==>"+res); }).catch(err => { console.log("第二个请求失败==>"+err); }) } step1();
Write ajaxpromise object in native js
const ajaxPromise = param => { return new Promise((resovle, reject) => { var xhr = new XMLHttpRequest(); xhr.open(param.type || "get", param.url, true); xhr.send(param.data || null); xhr.onreadystatechange = () => { var DONE = 4; // readyState 4 代表已向服务器发送请求 var OK = 200; // status 200 代表服务器返回成功 if(xhr.readyState === DONE){ if(xhr.status === OK){ resovle(JSON.parse(xhr.responseText)); } else{ reject(JSON.parse(xhr.responseText)); } } } }) }
Some points about using promise:
How to use : First create a promise object new Promise(), judge whether the execution is successful or failed based on business requirements, call resovle() if successful, and call reject() if failed.
-
Then(onFulfilled, onRejected) of the Promise object has two parameters. OnFulfilled is executed successfully, and onRejectd is executed if it fails.
p.then(function(value) { // fulfillment成功 }, function(reason) { // rejection失败 }); //不过通常会使用catch()来捕获失败,上段代码通常写为: p.then(function(value) { // fulfillment成功 }).catch(function(reason) { //rejection失败 })
Copy after login Then of the Promise object () will return a new Promise object
Related recommendations:
WeChat applet Promise simplified callback example sharing
How to use jQuery's Promise correctly
Simple usage of promise objects
The above is the detailed content of Sharing how to use ajax and promise together. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics











The DirectX repair tool is a professional system tool. Its main function is to detect the DirectX status of the current system. If an abnormality is found, it can be repaired directly. There may be many users who don’t know how to use the DirectX repair tool. Let’s take a look at the detailed tutorial below. 1. Use repair tool software to perform repair detection. 2. If it prompts that there is an abnormal problem in the C++ component after the repair is completed, please click the Cancel button, and then click the Tools menu bar. 3. Click the Options button, select the extension, and click the Start Extension button. 4. After the expansion is completed, re-detect and repair it. 5. If the problem is still not solved after the repair tool operation is completed, you can try to uninstall and reinstall the program that reported the error.

Build an autocomplete suggestion engine using PHP and Ajax: Server-side script: handles Ajax requests and returns suggestions (autocomplete.php). Client script: Send Ajax request and display suggestions (autocomplete.js). Practical case: Include script in HTML page and specify search-input element identifier.

Many friends still don’t know how to use Baidu Netdisk, so the editor will explain how to use Baidu Netdisk below. If you are in need, hurry up and take a look. I believe it will be helpful to everyone. Step 1: Log in directly after installing Baidu Netdisk (as shown in the picture); Step 2: Then select "My Sharing" and "Transfer List" according to the page prompts (as shown in the picture); Step 3: In "Friend Sharing", you can share pictures and files directly with friends (as shown in the picture); Step 4: Then select "Share" and then select computer files or network disk files (as shown in the picture); Fifth Step 1: Then you can find friends (as shown in the picture); Step 6: You can also find the functions you need in the "Function Treasure Box" (as shown in the picture). The above is the editor’s opinion

Title: Methods and code examples to resolve 403 errors in jQuery AJAX requests. The 403 error refers to a request that the server prohibits access to a resource. This error usually occurs because the request lacks permissions or is rejected by the server. When making jQueryAJAX requests, you sometimes encounter this situation. This article will introduce how to solve this problem and provide code examples. Solution: Check permissions: First ensure that the requested URL address is correct and verify that you have sufficient permissions to access the resource.

The KMS Activation Tool is a software tool used to activate Microsoft Windows and Office products. KMS is the abbreviation of KeyManagementService, which is key management service. The KMS activation tool simulates the functions of the KMS server so that the computer can connect to the virtual KMS server to activate Windows and Office products. The KMS activation tool is small in size and powerful in function. It can be permanently activated with one click. It can activate any version of the window system and any version of Office software without being connected to the Internet. It is currently the most successful and frequently updated Windows activation tool. Today I will introduce it Let me introduce to you the kms activation work

jQuery is a popular JavaScript library used to simplify client-side development. AJAX is a technology that sends asynchronous requests and interacts with the server without reloading the entire web page. However, when using jQuery to make AJAX requests, you sometimes encounter 403 errors. 403 errors are usually server-denied access errors, possibly due to security policy or permission issues. In this article, we will discuss how to resolve jQueryAJAX request encountering 403 error

How to use the shortcut keys for merging cells In daily work, we often need to edit and format tables. Merging cells is a common operation that can merge multiple adjacent cells into one cell to improve the beauty of the table and the information display effect. In mainstream spreadsheet software such as Microsoft Excel and Google Sheets, the operation of merging cells is very simple and can be achieved through shortcut keys. The following will introduce the shortcut key usage for merging cells in these two software. exist

Potplayer is a very powerful media player, but many friends still don’t know how to use potplayer. Today I will introduce how to use potplayer in detail, hoping to help everyone. 1. PotPlayer shortcut keys. The default common shortcut keys for PotPlayer player are as follows: (1) Play/pause: space (2) Volume: mouse wheel, up and down arrow keys (3) forward/backward: left and right arrow keys (4) bookmark: P- Add bookmarks, H-view bookmarks (5) full screen/restore: Enter (6) multiple speeds: C-accelerate, 7) Previous/next frame: D/
