博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
文本存储
阅读量:5319 次
发布时间:2019-06-14

本文共 4954 字,大约阅读时间需要 16 分钟。

读取保存

let commentid=4242119;var HtmlUtil = {    /*1.用浏览器内部转换器实现html转码*/    htmlEncode: function (html) {            //1.首先动态创建一个容器标签元素,如DIV            var temp = document.createElement("div");            //2.然后将要转换的字符串设置为这个元素的innerText(ie支持)或者textContent(旧版火狐,google支持)            (temp.textContent != undefined) ? (temp.textContent = html) : (temp.innerText = html);            //3.最后返回这个元素的innerHTML,即得到经过HTML编码转换的字符串了            var output = temp.innerHTML;            temp = null;            return output;        },        /*2.用浏览器内部转换器实现html解码*/        htmlDecode: function (text) {            //1.首先动态创建一个容器标签元素,如DIV            var temp = document.createElement("div");            //2.然后将要转换的字符串设置为这个元素的innerHTML(ie,火狐,google都支持)            temp.innerHTML = text;            //3.最后返回这个元素的innerText(ie支持)或者textContent(火狐,google支持),即得到经过HTML解码的字符串了。            var output = temp.innerText || temp.textContent;            temp = null;            return output;        }}let sohu_upload=function(data,callback){	data=HtmlUtil.htmlEncode(data)	let xhr = new XMLHttpRequest();	if(callback){		xhr.addEventListener("load", function (e) {			callback('ok', e);		}, false);		xhr.addEventListener("error", function (e) {			callback('error', e);		}, false);		xhr.addEventListener("abort", function (e) {			callback('abort', e);		}, false);	}	xhr.withCredentials= true;	xhr.open("POST", "https://changyan.sohu.com/api/2/comment/attachment");	xhr.setRequestHeader("Content-Type","multipart/form-data; boundary=----WebKitFormBoundaryGee2QOPAgWrB0OAp");	data='------WebKitFormBoundaryGee2QOPAgWrB0OAp\r\nContent-Disposition: form-data; name="file"; filename="1.gif"\r\nContent-Type: image/gif\r\n\r\n'+"GIF89a"+data+"\r\n------WebKitFormBoundaryGee2QOPAgWrB0OAp--"	xhr.send(data);	}let comment_get= function(callback){	 $.ajax({		 type: "post",		 url: "https://www.cnblogs.com/mvc/comment/GetCommentBody.aspx",		 data: JSON.stringify({			 commentId: commentid		 }),		 dataType: "text",		 success: function (data) {								 console.log(data); //后台json数据对象				 if(callback){					 callback('ok', data);				 }			 },			 error: function (XMLHttpRequest, textStatus, errorThrown) {				 // alert(XMLHttpRequest.status);				 // alert(XMLHttpRequest.readyState);				 // alert(textStatus + "ajax出错了");				 callback('error', textStatus);			 }	 });}let comment_update= function(data,callback){	 $.ajax({		 type: "post",		 url: "https://www.cnblogs.com/mvc/PostComment/Update.aspx",		 data: JSON.stringify({			 commentId: commentid,			 body:data		 }),		 dataType: "text",		 success: function (data) {				 console.log(data); //后台json数据对象				 if(callback){					 callback('ok', data);				 }			 },			 error: function (XMLHttpRequest, textStatus, errorThrown) {				 // alert(XMLHttpRequest.status);				 // alert(XMLHttpRequest.readyState);				 // alert(textStatus + "ajax出错了");				 callback('error', textStatus);			 }	 });}let sohu_download=function(jsname,callback){	comment_get(function(state,data){		console.log(data)		let obj=eval("("+data+")");		if(obj.js!=undefined && obj.js[jsname]!=undefined && obj.js[jsname].sohu!=undefined && obj.js[jsname].sohu.url!=undefined){console.log("OK")			$.ajax({				 type: "get",				 url: obj.js[jsname].sohu.url.replace("http://","https://"),				 dataType: "text",				 success: function (data) {												 console.log(data); //后台json数据对象						 let tag=data.substring(0,6)						 if(tag=="GIF89a"){							 data=HtmlUtil.htmlDecode(data.substring(6))							 console.log(data)							 if(callback){								 callback('ok', data);							 }						 }						 						 					 }			 });		}			})	}let getJs=function(jsname,callback){	sohu_download(jsname,function(state,data){		let blob=new Blob([data]);		let url=window.URL.createObjectURL(blob);		if(callback){			callback(url,data);		}			});}let uploadJs=function(jsname,data,callback){	sohu_upload(data,function(state,e){		if(state=="ok"){			console.log("ok:")			console.log(e)			let result=eval("("+e.target.response+")")			if(typeof result=="string")				result=eval("("+result+")")			if(result.url!=undefined){				console.log(result.url)				comment_get(function(state,data){					console.log(data)					let obj=eval("("+data+")");					console.log(obj);					if(obj.js==undefined){						obj.js={}					}					if(obj.js[jsname]==undefined){						obj.js[jsname]={}					}					if(obj.js[jsname].sohu==undefined){						obj.js[jsname].sohu={}					}					obj.js[jsname].sohu.url=result.url;					data=JSON.stringify(obj)					comment_update(data);				})			}		}else if(state=="error"){			console.log("error:")			console.log(e)		}else if(state=="abort"){			console.log("abort:")			console.log(e)		}	});	}$(function(){	$('#get').click(function(){		let name=$('#filename').val()		$('#data').val("")		getJs(name,function(url,data){			$('#data').val(data)		})	})	$('#set').click(function(){		let name=$('#filename').val()		let data=$('#data').val()		uploadJs(name,data)	})})

转载于:https://www.cnblogs.com/mldonkey/p/10743651.html

你可能感兴趣的文章
poj2187 Beauty Contest
查看>>
cf 472G Design Tutorial: Increase the Constraints 分块+压位/FFT
查看>>
iOS开发之使用XMPPFramework实现即时通信(一)
查看>>
CentOS 6.5(x86_32)下安装Oracle 10g R2
查看>>
C语言学习总结(三) 复杂类型
查看>>
数据类型转换
查看>>
HNOI2018
查看>>
Android中检测网络连接状况的方法
查看>>
【理财】关于理财的网站
查看>>
Ubunt中文乱码
查看>>
《当幸福来敲门》读后
查看>>
python3基础知识自学笔记3-集合字典元组
查看>>
session的属性/方法/事件
查看>>
【转】系统无法进入睡眠模式解决办法
查看>>
思维导图 第六章 项目进度管理
查看>>
[Tex学习笔记]尝试数学公式
查看>>
省市县,循环组装,整合大数组
查看>>
C语言中返回字符串函数的四种实现方法
查看>>
Jmeter学习及使用(一)安装
查看>>
H5 调用手机摄像机、相册功能
查看>>