在发送请求前处理 api 的设置或发送的数据:beforeSend

0
视频
0
完成
0%
进度
0
分钟
0
完成
0%
进度

在 API 向后端发送请求之前,我们有机会可以修改 api 的配置,还有请求里的数据 .. 在这个 api 的配置对象里 .. 可以添加一个 beforeSend 属性 .. 它的值是一个匿名函数 .. 这个函数里面有一个参数是 settings ...

在这个函数里,你可以做些判断,去修改 api 的配置,或者去改变发送的数据 .. 比如我想在用户没有指定文章标题的时候添加一个默认的标题 ..

先去判断一下 .. if .. . 要发送的数据是在 data 这个属性里 .. settings.data.title .. . 看看它是不是空白的 .. 如果是 ... 就设置一下这个 title 属性的值 .. settings.data.title 等于 .. 标题可以截取正文内容的前三十个字 .. settings.data.content_raw.substring(0, 30)

我们可以在控制台上输出要发送给服务端的数据 .. console.log(settings.data);

最后需要返回这个 settings .. return settings;

保存 ... 这里我们不输入标题 .. 直接输入文章的正文 ... 然后点击 提交 .. 在控制台上会显示发送给服务端的数据 ... 这里 title 属性的值就是根据正文内容生成的 ...

再打开 WordPress 的文章管理界面 .. 刷新一下 ... 这里会显示刚才创建的文章内容 ... 它的标题就是文章正文的一部分 ...

$('.ui.form').api({
action: 'posts',
method: 'POST',
serializeForm: true,
beforeSend: function (settings) {
if (settings.data.title === '') {
settings.data.title = settings.data.content_raw.substring(0, 30);
}
console.log(settings.data);
return settings;
},
beforeXHR: function (xhr) {
xhr.setRequestHeader('Authorization', 'Basic ' + btoa('wanghao' + ":" + '111111'));
return xhr;
}
});

在发送请求前处理 api 的设置或发送的数据:beforeSend《 Semantic UI 应用接口 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点