前言:
当前各位老铁们对“vueajax请求”大概比较注重,兄弟们都需要剖析一些“vueajax请求”的相关文章。那么小编同时在网上汇集了一些对于“vueajax请求””的相关资讯,希望大家能喜欢,同学们快快来了解一下吧!前后端分离时,后端做了JWT验证,百度UEditor富文编辑器不带token参数;需要自定义添加token到HTTP请求头中的"Authorization",下面进行token配置,这里重点讲述秀米编辑部分。
首先引入UEditor,这里@before-init="addCustomButton"是自定义秀米按钮,可以到秀米网站和百度Editor网站查看配置文档。
<vue-ueditor-wrap v-model="msg" :config="editorConfig " @before-init="addCustomButton" ></vue-ueditor-wrap>
这里的自定义参数ueditorToken传入sessionStorage.token 或 this.$Storage.get('token')的值,这两个值可以在登录时生成。下面初始化UEditor配置。
created() { this.editorConfig = { autoHeightEnabled: false, // 编辑器不自动被内容撑高 initialFrameHeight: 600, // 初始容器高度 initialFrameWidth: "100%", // 初始容器宽度 serverUrl: "/site/demo/ueditor", UEDITOR_HOME_URL: "/UEditor/", catchRemoteImageEnable: true, // 抓取远程图片 maximumWords: "100000000", ueditorToken: sessionStorage.token || this.$Storage.get('token'), }; },
在ueditor.config.js加入自定义参数ueditorToken。
// 服务器验证token , ueditorToken: "token"
在配置UEditor时,先把ueditor.all.js改成ueditor.all.min.js这样才能进行后续修改。现在是修改远程抓取内容部分,打开ueditor.all.min.js(原来的ueditor.all.js)进行修改。
这里加入自定义参数,请注意右边的行数,只增加红框的一句。
function catchremoteimage(imgs, callbacks) { var params = utils.serializeParam(me.queryCommandValue('serverparam')) || '', url = utils.formatUrl(catcherActionUrl + (catcherActionUrl.indexOf('?') == -1 ? '?':'&') + params), isJsonp = utils.isCrossDomainUrl(url), opt = { 'method': 'POST', 'dataType': isJsonp ? 'jsonp':'', 'timeout': 60000, //单位:毫秒,回调请求超时设置。目标用户如果网速不是很快的话此处建议设置一个较大的数值 'onsuccess': callbacks["success"], 'onerror': callbacks["error"], 'options': me.options,//这里是增加的参数 }; opt[catcherFieldName] = imgs; ajax.request(url, opt); }
最后部分就是向后端中请求时增加验证的token
红框部分是秀米的请求部分,也就是下面的第一个;第二个是UEditor上传图片的请求验证。
if (method == "POST") { xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); xhr.setRequestHeader("Authorization", ajaxOptions.options.ueditorToken); xhr.send(submitStr); } else { xhr.setRequestHeader("Authorization", ajaxOptions.options.ueditorToken); xhr.send(null); }
标签: #vueajax请求