params和data的差别,doc下载

 params和data的差别

export function downFile(url, parameter, method) {return axios({url: url,params: parameter,method: method ? method : "get",responseType: "blob",});
}//  params: parameter,请求的参数,会作为查询字符串附加到 URL 上

export function downFile2(url, parameter, method) {return axios({url: url,method: method,data: parameter, // 确保请求体包含参数responseType: "blob", // 指定响应类型为 blob});
}//data: parameter,请求体包含的参数。这通常用于发送复杂的数据,例如在 POST 请求中发送 JSON 数据。

data: parameterparams: parameter 在 Axios 请求中有不同的用途和行为,它们的主要区别如下:

使用场景示例

  • GET 请求使用 params

  • 用于发送 URL 查询字符串参数,通常用于 GET 请求。
  • 适合发送简单的键值对数据,作为 URL 查询参数的一部分。
  •  
    axios({url: '/api/example',method: 'get',params: {key1: 'value1',key2: 'value2'}
    });
    

  • 在上述例子中,数据会作为查询参数附加到 URL 上,例如 /api/example?key1=value1&key2=value2

  • POST 请求使用 data

  • 用于发送请求体中的数据,通常用于 POSTPUTPATCH 等方法。
  • 适合发送较大或较复杂的数据,如 JSON 对象、表单数据等
  • axios({url: 'https://api.example.com/data',method: 'post',data: {name: 'John Doe',age: 30}
    }).then(response => {console.log(response.data);
    });
    

    综上所述,data: parameter 用于发送请求体数据,适合 POSTPUT 请求;而 params: parameter 用于发送 URL 查询字符串参数,适合 GET 请求。选择使用哪种取决于你要发送的数据类型和请求方法。

下载doc文件

export function downFile2(url, parameter, method) {return axios({url: url,method: method,data: parameter, // 确保请求体包含参数responseType: "blob", // 指定响应类型为 blob});
}export function downloadFile2(url, fileName, parameter, method) {return downFile2(url, parameter, method).then((response) => {const data = response;const blob = new Blob([data], { type: "application/msword" }); // 设置为 DOC 文件的 MIME 类型if (typeof window.navigator.msSaveBlob !== "undefined") {window.navigator.msSaveBlob(blob, fileName);} else {const url = window.URL.createObjectURL(blob);const link = document.createElement("a");link.style.display = "none";link.href = url;link.setAttribute("download", fileName);document.body.appendChild(link);link.click();document.body.removeChild(link); // 下载完成移除元素window.URL.revokeObjectURL(url); // 释放掉 blob 对象}}).catch((error) => {console.error("文件下载失败:", error);});
}

 使用

     downloadFile2("/asset/assetrentcontract/downLoadTemplate",`${data.contractName + "备案表"}.doc`,assetRentemplateDTO,"post");

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/46573.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

实习随笔【前端技术实现全局添加水印】

有一些数据比较重要的项目&#xff0c;往往需要对数据进行保护措施&#xff0c;本文介绍常见策略——全局添加水印。 1、创建水印组件 <template><div class"water-mark"><div class"water-mark-content"><span class"phone&qu…

打破平台限制,使智能手机和平板电脑上无缝运行Windows x86/x64架构的软件和游戏的一款安卓应用

大家好&#xff0c;今天给大家分享一款专为Android设备设计的模拟器应用Winlator。其核心功能是能够在基于ARM架构的智能手机和平板电脑上无缝运行Windows x86/x64架构的软件和游戏。 Winlator是一款Android应用程序&#xff0c;它允许用户使用Wine和Box86/Box64在Android设备上…

docker-compose部署redis-exporter

一、安装prometheus 1、安装 version: 3.1services:redis-exporter:image: bitnami/redis-exporter:latestcontainer_name: redis-exporterports:- 9121:9121environment:TZ: Asia/Shanghaicommand:- --redis.addrredis://127.0.0.1:6379# - --redis.passwordlabels:org.labe…

C#学习3-微软C#官方文档Microsoft-dotnet-csharp.pdf

文章目录 1.内插表达式的字段宽度和对齐方式 1.内插表达式的字段宽度和对齐方式 static void Main(string[] args) {var titles new Dictionary<string, string>() {["Doyle ,Arthur"] "Hound of the Basker,The",["Lodon ,Jack"] &quo…

PHP恋爱话术微信小程序系统源码

&#x1f496;恋爱高手的秘密武器&#xff01;恋爱话术微信小程序&#xff0c;让情话信手拈来✨ &#x1f4ad;【开场白&#xff1a;恋爱路上的甜蜜助手】&#x1f4ad; 还在为跟心仪的TA聊天时找不到话题而尴尬&#xff1f;或是担心自己说的每句话都显得那么“直男/女”&…

Linux上启动和停止jar

linux 后台运行jar 在Linux系统中&#xff0c;要想让jar包在后台运行&#xff0c;可以使用nohup命令和&符号。nohup命令可以使进程在后台不受挂起信号影响的执行&#xff0c;而&符号则是将任务放入后台执行。 以下是一个简单的命令示例&#xff0c;它将启动一个jar包…

记一次使用vue连接rabbitMq

连接rabbitMq需要使用stompjsnpm i stompjs 下下面是连接代码 import Stomp from stompjsonConnected(frame) {// 绑定交换机exchange_pushmsg是交换机的名字rk_pushmsg是绑定的路由keyvar exchange this.rabbitMqexchange || queue.device.zzzz// 创建随机队列用上面的路由k…

安全编织:Eureka驱动的分布式服务网格安全策略

安全编织&#xff1a;Eureka驱动的分布式服务网格安全策略 在微服务架构的复杂网络中&#xff0c;服务的安全性是维护系统稳定运行的基石。服务网格&#xff08;Service Mesh&#xff09;作为微服务间通信的代理层&#xff0c;承担着保障服务间通信安全的重要职责。Eureka&…

vi 编辑器快捷生成 main 函数和基本框架

step1: 执行 sudo vi /etc/vim/vimrc &#xff08;修改vimrc需要管理员权限&#xff1a;sudo&#xff09; step2:输入用户密码&#xff0c;回车, 编辑vimrc文件 step3:在尾行输入以下代码&#xff08;可复制&#xff09; map mf i#include<stdio.h><ESC>o#includ…

Web3发展的基本要素

区块链&#xff1a;分布式数据库 1 区块链是一种新型的分布式数据库协议&#xff0c;是实现Web3的最核心技术。 2 区块链的技术特性使其能够&#xff1a; 1&#xff09;安全地存储数据&#xff0c;得益于现代计算机密码学&#xff0c;用户可以获得自己独特、安全的账户&…

java itextPdf根据pdf模板,编辑保存pdf后可二次编辑处理

java 支持pdf 多次编辑的重点只有两个 1&#xff1a;flat属性 2&#xff1a;设置文本域只读属性 看似简单的两个问题&#xff0c;却耗费了一天的时间。pdf没有官方文档太难受了&#xff0c;只能在网上查找相关的案 例。但是很多文章都是copy别人的。没有实际效果。皇天不负有…

uniapp 微信小程序根据后端返回的文件链接打开并保存到手机文件夹中【支持doc、docx、txt、xlsx等类型的文件】

项目场景&#xff1a; 我们在使用uniapp官方提供的uni.downloadFile以及uni.saveFile时&#xff0c;会发现这个文件下载的默认保存位置和我们预想的不太一样&#xff0c;容易找不到&#xff0c;而且没有提示&#xff0c;那么我们就需要把文件打开自己保存并且有提示保存到哪个…

探索前沿科技:从迁移学习看人工智能的无限可能性

从迁移学习看人工智能的无限可能性 1 引言1.1 什么是迁移学习1.1.1 迁移学习的定义1.1.2 迁移学习的起源和背景 1.2 迁移学习的重要性1.2.1 解决小数据集问题1.2.2 提高模型训练效率1.2.3 应用于不同领域的广泛性 1.3 迁移学习的前景 2 迁移学习的基本概念2.1 源域和目标域2.1.…

【区块链 + 智慧政务】涉税行政事业性收费“e 链通”项目 | FISCO BCOS应用案例

国内很多城市目前划转至税务部门征收的非税收入项目已达 17 项&#xff0c;其征管方式为行政主管部门核定后交由税务 部门征收。涉税行政事业性收费受限于传统的管理模式&#xff0c;缴费人、业务主管部门、税务部门、财政部门四方处于 相对孤立的状态&#xff0c;信息的传递靠…

模板方法原理与C++实现

定义 定义一个操作中的算法骨架&#xff08;稳定的&#xff09;&#xff0c;而将一些步骤的实现延迟到子类中&#xff08;变化的&#xff09;。模板方法使得子类可以复用一个算法的结构&#xff0c;而只改变&#xff08;重写&#xff09;这个算法的特定步骤。 C实现 class L…

ns3-gym入门(二):linear-mesh例子详解

一、问题背景&#xff1a;Random Access Controlling the random access in an IEEE 802.11 mesh network is challenging as the network nodes compete for the shared radio resources. It is known that assigning the same channel access probability to each node is no…

无人机之机架类型篇

碳纤维机架 具有低密度、高强度和高刚度的特点&#xff0c;非常适合商业或工业级无人机的设计。碳纤维机架在飞行过程中具有良好的减振效果&#xff0c;使飞行更加稳定&#xff0c;但制作工艺复杂&#xff0c;成本较高。 工程塑料机架 以其轻便、耐冲击和易加工等特点受到一…

Vue 3 组件通信与状态管理:从基础到Pinia的全面解析

引言 Vue 3引入了Composition API&#xff0c;这为组件通信提供了更多的灵活性和强大的功能。例如&#xff0c;使用provide和inject可以轻松实现跨层级组件的数据传递&#xff0c;而setup函数则为组件提供了更早的生命周期钩子&#xff0c;使得在组件初始化阶段就能进行通信设…

Chrome调试工具

一、Chrome调试工具 1.Ctrl滚轮 可以放大开发者工具代码大小。 2.左边是 HTML 元素结构&#xff0c;右边是 CSS 样式。 3.右边 CSS 样式可以改动数值&#xff08;左右箭头或者直接输入&#xff09;和查看颜色。 4.Ctrl 0 复原浏览器大小。 5.如果点击元素&#xff0c;发现右侧…

Netfilter之连接跟踪(Connection Tracking)和反向 SNAT(Reverse SNAT)

连接跟踪&#xff08;Connection Tracking&#xff09; 连接跟踪是 Netfilter 框架中的一个功能&#xff0c;用于跟踪网络连接的状态和元数据。它使防火墙能够识别和处理数据包属于哪个连接&#xff0c;并在双向通信中正确匹配请求和响应数据包。 工作原理 建立连接&#xf…