技术标签: ajax
JSON.stringify(data) 将data 转换为json格式
如果data 是 数组格式 则转换之后为[1,12,3]
如果data是 一个类 则转换之后为 {"name":"hxyt"}
app.all('/json-server',(request,response)=>{
response.setHeader('Access-Control-Allow-Origin','*');
// 接受所有请求的头信息
response.setHeader('Access-Control-Allow-headers','*');
const data ={
name:'hxyt'
};
const data2=[1,12,3];
let str2=JSON.stringify(data2);
let str =JSON.stringify(data);
// 设置响应
response.send(str+str2);
});
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<textarea id="textarea">
</textarea>
</body>
</html>
<script>
window.onclick=function()
{ const textarea=document.getElementById("textarea");
const xhr=new XMLHttpRequest();
xhr.open('POST','http://127.0.0.1:8000/json-server');
xhr.send();
xhr.onreadystatechange=function(){
if(xhr.status===4){
if(xhr.status>200&&xhr.status<300){
console.log(xhr.status);
}
}
textarea.innerHTML=xhr.response;
console.log(xhr.response);
}
}
</script>
执行结果
要把json格式转换为数据原来的格式,有两种方法
let data=JSON.parse(xhr.response);
textarea.innerHTML=data.name;
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<textarea id="textarea">
</textarea>
</body>
</html>
<script>
window.onclick=function()
{ const textarea=document.getElementById("textarea");
const xhr=new XMLHttpRequest();
xhr.open('POST','http://127.0.0.1:8000/json-server');
xhr.send();
xhr.onreadystatechange=function(){
if(xhr.readyState===4){
if(xhr.status >= 200 && xhr.status<=300){
let data=JSON.parse(xhr.response);
textarea.innerHTML=data.name;
}
}
}
}
</script>
// 自动转换,设置响应体数据的类型
xhr.responseType='json';
//自动转换
textarea.innerHTML=xhr.response.name;
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<textarea id="textarea">
</textarea>
</body>
</html>
<script>
window.onclick=function()
{ const textarea=document.getElementById("textarea");
const xhr=new XMLHttpRequest();
// 自动转换,拿到响应值之后会自动转为json格式
xhr.responseType='json';
xhr.open('POST','http://127.0.0.1:8000/json-server');
xhr.send();
xhr.onreadystatechange=function(){
if(xhr.readyState===4){
if(xhr.status >= 200 && xhr.status<=300){
// 手动转换
// let data=JSON.parse(xhr.response);
// textarea.innerHTML=data.name;
//自动转换
textarea.innerHTML=xhr.response.name;
}
}
}
}
</script>
https://gitee.com/rjgc1192/ajax/commit/5e3302cfcc388d30ac696950fbc4128fba8c8a83
版本5e3302cf
文章浏览阅读658次,点赞2次,收藏2次。javaweb文件下载多个@WebServlet("/user")public class UserController extends HttpServlet { private UserService userService = new UserServiceImpl(); @Override public void init(ServletConfig config) throws ServletException { super.init(conf_fileutils.copyfile(file, response.getoutputstream)
文章浏览阅读9.9k次。https://www.youtube.com/watch?v=j1I63wGcvU4
文章浏览阅读4.3w次,点赞7次,收藏18次。java.lang.IllegalArgumentException: Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986错误原因:当在浏览器中访问时 URL中带有特殊字符,如花括号冒号时,就会出现这个错误。例如:http://loca..._java.lang.illegalargumentexception: invalid character found in the request t
文章浏览阅读3.6k次,点赞2次,收藏4次。5-5 求前缀表达式的值 (25分) 算术表达式有前缀表示法、中缀表示法和后缀表示法等形式。前缀表达式指二元运算符位于两个运算数之前,例如2+3*(7-4)+8/4的前缀表达式是:+ + 2 * 3 - 7 4 / 8 4。请设计程序计算前缀表达式的结果值。输入格式:输入在一行内给出不超过30个字符的前缀表达式,只包含+、-、*、\以及运算数,不同对象(运算数、运算符号)之_求前缀表达式的值pta
文章浏览阅读9k次。1、将鼠标放到这个按钮上,点击第一个选项2、HTTP port:此处为端口号3、修改完成后,点击右下角应用,修改完成。_idea上修改反向工程mysql的默认端口号
文章浏览阅读2.1w次,点赞24次,收藏102次。C中不同数据类型所占的字节大小,在不同的操作系统和编译器下,是不同的,一般主要说gcc下,32位或64位系统的,红色部分是32 和64位系统不同的,做了个表如下:char 1 1 -128~127unsigned char(当byte使用) 1 1 0~255short int /short 2 2 –32,768~32,767unsigned short 2 2 0~65,535int 4 4 -2,147,483,648~2,147,483,647unsigned int 4_c++各类型占用字节
文章浏览阅读379次。HandlerThread简介HandlerThread,顾名思义,是一个在其内部可以使用Handler的线程,其实本质是HandlerThread线程内部构造了一个Looper环境。源码如下:在其run方法中初始化了一个Looper的环境,创建了Looper对象并且开启了loop循环。//HandlerThread run()方法@Override public void run() { mTid = Process.myTid(); Looper.prepa_android 怎么判断handlerthread中的线程有没有执行完
文章浏览阅读552次。在研究拍照后突破的存储路径的问题,开始存储路径写死为: private String folder = "/sdcard/DCIM/Camera/"(SD卡上拍照程序的图片存储路径); 后来发现这样写虽然一般不会出错,但不是很好,因为不同相机,可能路径会出问题。较好的方法是通过Environment 来获取路径,最后给出一个例子,教你怎样获取SDCard 的内存,显示出来告诉用户。讲述的内容如下:_java获取内存卡目录
文章浏览阅读5.1k次。TensorRTTensorRT是Nvidia公司出的能加速模型推理的框架,其实就是让你训练的模型在测试阶段的速度加快,比如你的模型测试一张图片的速度是50ms,那么用tensorRT加速的话,可能只需要10ms。当然具体能加速多少也不能保证,反正确实速度能提升不少。注意,直接看对应的官方文档,是最有效,最准确的方式。参考文章:https://blog.csdn.net/feedinglife/article/details/120848119https://zhuanlan.zhihu.com/_paddle tensorrt
文章浏览阅读62次。一、DM×××介绍 Dynamic Multipoint ×××(DM×××)是一种动态建立××× Tunnel的技术,目的是在Hub-And-Spoke网络环境下,使用Next Hop Resolution Protocol(NHRP)技术解析需要建立×××隧道的对端地址,并使用multipoint GRE tunne..._crypto isakmp key cisco123 address 0.0.0.0 0.0.0.0
文章浏览阅读764次。onUploadProgress监听上传进度产生跨域问题起因:ie和edge浏览器在调用xhr.upload.onprogress进度事件时,仍然只会发送post或者get请求,但是火狐等高端一点的浏览器会将其视为跨域问题,并在post或者get请求之前,自动发出一个option请求那么坑爹的就是,后台不解决option,后续新的请求就不会得到响应。解决方案后台处理option请求就行内容转载自 小九的小酒https://blog.csdn.net/hanxiang1122/article/_axios onuploadprogress 跨域
文章浏览阅读290次。np.save(file_to_save, A)_closedxml csv