当前位置: 首页 > news >正文

ASP.NET MVC-异步发送post请求+文件下载

环境:
win10, .NET 6.0


前端向后台传递string型变量

前端:

    function PasteSubmit() {// 获取某个input的值var inName = document.getElementById("xx").value;// 获取某个元素的属性值var inSeq = document.getElementById("xxx").getAttribute("xxx");$.ajax({type: 'POST',url: "/Home/PasteSubmit",data: {inName: inName,inSeq: inSeq,},success: function (resp) {console.log(resp);}});}

后台:(HomeController)

[HttpPost]
public ActionResult PasteSubmit() {// 获取数据string name = Request.Form["inName"]; string seq = Request.Form["inSeq"];System.Diagnostics.Trace.WriteLine(name);System.Diagnostics.Trace.WriteLine(seq);// do something// 返回的内容return Content("test");
}

前台向后台传递多个List

说明:先传递三个List,后台接收后做一些处理,然后回传字符串,将字符串写入文件,生成下载文件,自动下载。

前端:

@{
// 定义
List<int> cstarts = new List<int>() { 1, 2, 3};
List<int> cends = new List<int>() { 4, 5, 6 };
List<string> cstrs = new List<string>() { "", "sss", "x"};
}<!-- html内容略 --><button id="exportSeqBtn" onclick="exportSeq()" type="button">导出序列
</button><!-- js -->
<script>// 导出序列function exportSeq() {var starts = @Html.Raw(Json.Encode(cstarts));var ends = @Html.Raw(Json.Encode(cends));var strs = @Html.Raw(Json.Encode(cstrs));$.ajax({url: "/Home/ExportSeq",method: 'POST',data: JSON.stringify({vid: @Model.Id,cstarts: starts,cends: ends,cstrs: strs,}),contentType: 'application/json; charset=utf-8',success: function (data) {var blob = new Blob([data], { type: 'text/plain' });var link = document.createElement('a');link.href = window.URL.createObjectURL(blob);link.download = 'sequence.fa'; // 下载文件的文件名link.click();},error: function (xhr, status, error) {alert('An error occurred while generating the file: ' + error);}});}
</script>

后端:

[HttpPost]
public ActionResult ExportSeq(string vid, List<int> cstarts, List<int> cends, List<string> cstrs) {var txtContent = new StringBuilder();// do somethingtxtContent.AppendLine(string.Join(",", cstarts));// 可以打印其他的看看return Content(txtContent.ToString(), "text/plain");
}

相关文章:

ASP.NET MVC-异步发送post请求+文件下载

环境&#xff1a; win10, .NET 6.0 前端向后台传递string型变量 前端&#xff1a; function PasteSubmit() {// 获取某个input的值var inName document.getElementById("xx").value;// 获取某个元素的属性值var inSeq document.getElementById("xxx").g…...

Unity 2D RPG Kit 学习笔记

学习资料&#xff1a; B站教学视频&#xff1a;https://www.bilibili.com/video/BV1dC4y1o7A5?p1&vd_source707ec8983cc32e6e065d5496a7f79ee6 2D RPG Kit Documentation.pdf文档 1、2D RPG Kit Documentation文档 1.1、Scenes/TitleScreen 开始菜单工程 1.2、https://it…...

联想天逸100使用笔记

文章目录 配置整理过程锁定功能键怎么弄? 翻出好多年不用的老电脑&#xff0c;饱受折磨&#xff0c;做个笔记。 之前不是我在使用&#xff0c;本身配置就不高&#xff0c;还被装了各种流氓软件&#xff0c;卡的几乎动不了。 配置 老电脑配置不行&#xff1a; i3 5005U 4G内存…...

【AI知识点】嵌入向量(Embedding Vector)

嵌入向量&#xff08;Embedding Vector&#xff09;是通过嵌入函数&#xff08;Embedding Function&#xff09;将复杂、高维或稀疏数据&#xff08;如文本、图像、分类特征等&#xff09;映射到低维、稠密空间中表示的向量。这种向量表示保留了原始数据的语义或结构信息&#…...

github命令行管理工具推荐

GitHub 管理工具推荐 背景 在使用 GitHub 管理仓库时&#xff0c;需要在 Web 端创建远程仓库&#xff0c;在本地创建本地仓库&#xff0c;然后再用 git remote add origin url 进行关联。这个过程相对繁琐&#xff0c;而且还有优化的空间。如果频繁创建仓库&#xff0c;就更能…...

【React】react项目中的redux使用

1. store目录结构设计 2. react组件中使用store中的数据——useSelector 3. react组件中修改store中的数据——useDispatch 4. 示例 react-basic\src\store\moduels\counterStore.js import { createSlice } from reduxjs/toolkitconst counterStore createSlice({name: cou…...

AJAX JSON 实例

AJAX JSON 实例 引言 AJAX(Asynchronous JavaScript and XML)和JSON(JavaScript Object Notation)是现代Web开发中常用的技术。AJAX允许在不重新加载整个页面的情况下,与服务器交换数据和更新部分网页内容。JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易…...

java8:hutool:httputil.post读取配置项中的url

如果HttpUtil.post是静态方法&#xff0c;无法直接访问非静态的Value注入的属性。有以下几种解决办法&#xff1a; 构造函数注入 1. 首先将配置项的值通过Value注入到类的成员变量&#xff0c;然后在构造函数中将这个值传递给一个静态变量。 import org.springframework.bean…...

Springboot结合RabbitMQ

pom.xml <!--AMQP依赖&#xff0c;包含RabbitMQ--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId></dependency>application.yaml spring:rabbitmq:host: 127.0.0.1u…...

UNIAPP 动态菜单实现方法

1. 封装tabbar组件&#xff0c;组件UI使用uview的tabbar allList 定义出全部的菜单 list 定义当前用户能看到的菜单使用 u-tabbar 渲染出来 list 2. 权限判断处理 3. 使用方式 在 tab 页&#xff0c;底部放入该 tab 组件&#xff0c;并设置当前回显的页面&#xff0c;这里使用…...

windows C++-使用任务和 XML HTTP 请求进行连接(一)

本文会演示如何将 IXMLHTTPRequest2 和 IXMLHTTPRequest2Callback 接口与任务结合使用&#xff0c;以将 HTTP GET 和 POST 请求发送至通用 Windows 平台 (UWP) 应用中的 Web 服务。 通过将 IXMLHTTPRequest2 与任务组合在一起&#xff0c;你可以编写通过其他任务编写的代码。 例…...

HTB:Oopsie[WriteUP]

目录 连接至HTB服务器并开启靶机 1.With what kind of tool can intercept web traffic? 2.What is the path to the directory on the webserver that returns a login page? 3.What can be modified in Firefox to get access to the upload page? 4.What is the acc…...

【JAVA高级】如何使用Redis加锁和解锁(一)、Lua脚本执行原理及流程

文章目录 加锁方法一&#xff1a;使用SETNX命令结合EXPIRE命令方法二&#xff1a;使用SET命令的扩展参数&#xff08;NX和PX&#xff09;方法三&#xff1a;使用Lua脚本 解锁方法一&#xff1a;简单删除key方法二&#xff1a;使用Lua脚本验证后删除key Lua脚本的执行原理&#…...

2024年使用宝塔面板轻松部署Java Web

以下是2024年最新图形化部署Java Web项目到CentOS系统的手把手教程&#xff1a; 一、准备工作 确保服务器环境&#xff1a;确保你的服务器已经安装了CentOS 7操作系统&#xff0c;并且已经安装了宝塔面板。如果还没有安装&#xff0c;可以参考之前的教程进行安装。下载Java W…...

闯关训练一:Linux基础

闯关任务&#xff1a;完成SSH连接与端口映射并运行hello_world.py 1.创建开发机 2.SSH连接 3. VS-Code 连接 选择 Linux 平台 &#xff0c;输入密码 &#xff0c;选择进入文件夹 4.端口映射 按照下文安装Docs pip install gradio 运行server.py import gradio as grdef …...

鸿蒙NEXT开发-ArkTS(基于最新api12稳定版)

注意&#xff1a;博主有个鸿蒙专栏&#xff0c;里面从上到下有关于鸿蒙next的教学文档&#xff0c;大家感兴趣可以学习下 如果大家觉得博主文章写的好的话&#xff0c;可以点下关注&#xff0c;博主会一直更新鸿蒙next相关知识 专栏地址: https://blog.csdn.net/qq_56760790/…...

laravel延迟队列 取消未支付超时订单订单

1&#xff1a;生成待支付订单时&#xff0c;调用延迟队列 超过十五分钟未支付自动取消 use App\Jobs\endTask; use Illuminate\Support\Carbon; $resPost1 array("act" > "cy_order_cancel", "id" > $id); endTask::dispatch($resPos…...

解锁高效开发的秘密武器

在当今这个信息爆炸、技术日新月异的时代&#xff0c;编程工具的选择对于开发者来说至关重要。一个好的编程工具不仅能够简化代码编写&#xff0c;还能自动化任务、提升调试速度&#xff0c;甚至让团队协作更加顺畅。那么&#xff0c;哪款编程工具能让你的工作效率翻倍呢&#…...

【CSS】兼容处理

兼容前缀兼容查询 由于不同浏览器对CSS标准的支持程度不同&#xff0c;可能会导致在不同浏览器中出现样式差异。为了解决这个问题&#xff0c;需要采取一些措施来提高CSS的兼容性 兼容前缀 兼容前缀针对的浏览器-webkit-WebKit 内核浏览器&#xff0c;如&#xff1a;Safari 、…...

C语言线程

线程 多个进程中通过轮流使用CPU来完成自己的任务&#xff0c;如果多个进程的操作都一模一样那么CPU的开销就会很大&#xff0c;因为进程的地址都是私有的&#xff0c;如果CPU对相同的操作只执行一次&#xff0c;后面再遇到直接去获取即可&#xff0c;这样大大降低了CPU的开销…...

Prompt-Builder:构建可复用提示词模板,提升大模型工程化效率

1. 项目概述&#xff1a;Prompt-Builder 是什么&#xff0c;以及为什么你需要它如果你和我一样&#xff0c;在过去一年里深度使用过各种大语言模型&#xff0c;那你一定经历过这样的时刻&#xff1a;面对一个复杂的任务&#xff0c;你精心构思的提示词&#xff08;Prompt&#…...

Synabun:Node.js 高可靠 HTTP 请求策略引擎详解

1. 项目概述&#xff1a;一个被低估的HTTP请求库如果你经常在Node.js环境下处理HTTP请求&#xff0c;大概率用过axios、node-fetch或者原生的http模块。这些工具各有优劣&#xff0c;但当你需要处理复杂的重试逻辑、精细的速率限制、或者想在一个统一的接口下管理多种请求策略时…...

从棋盘格到精准感知:ROS camera_calibration实战单目与双目相机标定

1. 为什么相机标定是机器人视觉的"体检报告"&#xff1f; 想象一下你新配了一副眼镜&#xff0c;但镜片度数不准——看东西要么变形要么模糊。相机标定就是给机器人的"眼睛"做验光&#xff0c;确保它看到的图像能真实反映物理世界。我在做视觉SLAM项目时&a…...

AI文档智能审查:从NLP原理到企业级部署实战

1. 项目概述&#xff1a;文档的“哨兵”与智能守护者在信息爆炸的时代&#xff0c;我们每天都要与海量的文档打交道——从一份关键的商业合同、一份严谨的学术论文&#xff0c;到一份复杂的项目需求说明书。这些文档不仅是信息的载体&#xff0c;更是决策的依据、合作的基石。然…...

AI驱动数字营销平台架构解析:从工作流引擎到品牌个性化

1. 项目概述&#xff1a;一个AI驱动的数字营销代理平台最近在GitHub上看到一个挺有意思的项目&#xff0c;叫windagency/valora.ai。乍一看这个仓库名&#xff0c;可能很多人会有点懵&#xff0c;这到底是做什么的&#xff1f;是AI工具&#xff0c;还是营销平台&#xff1f;作为…...

Taotoken助力初创团队以可控成本集成大模型能力

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 Taotoken助力初创团队以可控成本集成大模型能力 为产品添加智能对话功能是许多初创团队提升用户体验的关键一步。然而&#xff0c;…...

2026年南京本地实测整理,值得入手的高性价比全屋定制品牌推荐

讲真&#xff0c;南京准备装房子、换柜子的姊妹们、老少爷们&#xff0c;谁没为全屋定制头大过&#xff1f;刚收了江北核心区的新房&#xff0c;还是鼓楼老破小准备翻新&#xff0c;跑了三五家门店就会发现&#xff1a;水太深了&#xff01;低价套餐勾你进去&#xff0c;签约后…...

大模型爆发期!程序员现在转型,还能赶上风口吗?

文章目录前言一、2026年&#xff0c;大模型风口到底有多猛&#xff1f;二、90%的人不敢转型&#xff0c;都是被这3个误区坑了误区1&#xff1a;转大模型必须会高数、会从头训模型误区2&#xff1a;我只会写CRUD&#xff0c;没资格转大模型误区3&#xff1a;现在转已经晚了&…...

思源宋体CN:零成本打造专业中文排版的终极秘籍

思源宋体CN&#xff1a;零成本打造专业中文排版的终极秘籍 【免费下载链接】source-han-serif-ttf Source Han Serif TTF 项目地址: https://gitcode.com/gh_mirrors/so/source-han-serif-ttf 还在为字体版权费用发愁&#xff1f;还在寻找既能商用又专业的中文字体&…...

BilibiliDown:一键下载B站音频的跨平台神器

BilibiliDown&#xff1a;一键下载B站音频的跨平台神器 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader &#x1f633; 项目地址: https://gitcode.com/gh_mirrors/bi/Bilibili…...