Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

js post 请求

作者:メ可遇不可求   发布日期:2025-07-01   浏览:48

// 使用 XMLHttpRequest 发起 POST 请求
function postData(url = '', data = {}) {
  // 默认情况下,如果 url 或 data 为空,则使用空字符串
  return new Promise((resolve, reject) => {
    const xhr = new XMLHttpRequest();
    xhr.open('POST', url);
    xhr.setRequestHeader('Content-Type', 'application/json;charset=UTF-8');

    xhr.onload = function() {
      if (xhr.status >= 200 && xhr.status < 300) {
        resolve(xhr.response);
      } else {
        reject(new Error(`HTTP error! status: ${xhr.status}`));
      }
    };

    xhr.onerror = function() {
      reject(new Error('Network Error'));
    };

    // 将数据转换为 JSON 字符串并发送
    xhr.send(JSON.stringify(data));
  });
}

// 示例调用
postData('https://example.com/api', { name: 'John', age: 30 })
  .then(response => console.log('Success:', response))
  .catch(error => console.error('Error:', error));

解释说明:

  1. postData 函数:这是一个封装了 XMLHttpRequest 的函数,用于发起 POST 请求。它接受两个参数:请求的 URL 和要发送的数据对象。
  2. Promise:我们使用 Promise 来处理异步操作,以便可以使用 .then().catch() 方法来处理成功和失败的情况。
  3. 设置请求头:通过 setRequestHeader 设置 Content-Typeapplication/json,表示我们将发送 JSON 格式的数据。
  4. 发送数据:使用 JSON.stringify 将 JavaScript 对象转换为 JSON 字符串,并通过 send 方法发送给服务器。
  5. 处理响应:在 onload 回调中检查 HTTP 状态码,确保请求成功后解析响应;在 onerror 回调中处理网络错误。

示例调用:

  • 我们调用 postData 并传入一个 URL 和一个包含 nameage 属性的对象作为数据。
  • 成功时,控制台会输出服务器的响应;失败时,会输出错误信息。

上一篇:js 发送post请求

下一篇:js 字符串包含某个字符串

大家都在看

js 数组对象排序

js 数组删掉第一个值

js fill

js 数组复制

js 复制数组

js 数组拷贝

js 对象转数组

js 深拷贝数组

js 获取今天年月日

js jsonp

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站