标签:err header onload 数据类型 doc 事件 cat 方法 hello
HTTP状态码
|
描述
|
100
|
继续。继续响应剩余部分,进行提交请求
|
200
|
成功
|
301
|
永久移动。请求资源永久移动到新位置
|
302
|
临时移动。请求资源零时移动到新位置
|
304
|
未修改。请求资源对比上次未被修改,响应中不包含资源内容
|
401
|
未授权,需要身份验证
|
403
|
禁止。请求被拒绝
|
404
|
未找到,服务器未找到需要资源
|
500
|
服务器内部错误。服务器遇到错误,无法完成请求
|
503
|
服务器不可用。临时服务过载,无法处理请求
|
function ajax(options) { let opts = Object.assign({ url: "", method: "get", data: "", headers:{ "content-type":"application/x-www-form-urlencoded", }, success(res) {} }, options) let xhr = new XMLHttpRequest(); if(opts.method==="get"){ console.log(o2u(opts.data)) // data: { // hello: "你好", // height: "178cm" // } // hello=还好&height=178cm opts.url = opts.url+"?"+o2u(opts.data); } xhr.open(opts.method,opts.url,true); // 设置头部 for(let key in opts.headers){ xhr.setRequestHeader(key,opts.headers[key]); } let sendData; switch(opts.headers[‘content-type‘]){ case ‘application/x-www-form-urlencoded‘: sendData = o2u(opts.data); break; case ‘application/json‘: sendData = JSON.stringify(opts.data); break; } xhr.onload = function(){ opts.success(JSON.parse(xhr.responseText)); } if(opts.method=="get"){ xhr.send(); }else{ xhr.send(sendData); } function o2u(obj){ let keys = Object.keys(obj); let values = Object.values(obj); // hello=你好; // height=178cm return keys.map((v,k)=>{ return `${v}=${values[k]}`; }).join("&"); } }
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head> <body> <input type="file" class="myfile" /> <button>点击我上传文件</button> </body> <script> document.querySelector("button").onclick = function(){ let file = document.querySelector(".myfile").files[0]; // console.log(files); let form = new FormData(); form.append("img",file); form.append("name","张三"); let xhr = new XMLHttpRequest(); xhr.open("post","/upload",true); xhr.onload = function(){ console.log(xhr.responseText); } xhr.send(form); } </script> </html>
标签:err header onload 数据类型 doc 事件 cat 方法 hello
原文地址:https://www.cnblogs.com/supermanGuo/p/11496849.html